Students learn the basics of programming in Python -- enough to allow them to use it for coursework and research and to continue to learn more. Topics covered include looping and branching, formatted output, using and defining functions, using modules, graphing with Matplotlib, and an introduction to Object Oriented Programming. Students learn the basics of programming in Python, enough to use it for coursework and research and to continue to learn more, including looping and branching, formatted output, using and defining functions, using modules, graphing with Matplotlib, and an introduction to Object Oriented Programming. Students learn the basics of programming in Python, including looping and branching, formatted output, using and defining functions, using modules, graphing with Matplotlib, and an introduction to Object Oriented Programming, which is enough to use it for coursework and research and to continue to learn more.