Return to the main course page:
Resources labeled with (*) might be somewhat advanced and are not recommended starting points for those for whom this course will be their first programming experience.
A Byte of Python by Swaroop C H
Automate the Boring Stuff with Python by Al Sweigart
Python for Everybody by Charles Severance
Python for Everybody by Charles Severance
Joy of Computing with Python by Sudarshan Iyengar on NPTEL
Interactive Programming with Python on Coursera
Programming, Data Structures and Algorithms in Python by Madhavan Mukund on NPTEL*
Introduction to Computer Science and Programming in Python on MIT OCW*
HackerRank (See Language Proficiency → Python.)
CodeChef (For general problem-solving practice.)
Google Code Jam (For general problem-solving practice.)
Reddit Daily Programmer (For general problem-solving practice.)
All computers in the lab have Python v3.5 installed along with VS Code (the choice of text editor for this course).
To practice on your own machines, you can either install Python via Anaconda or simply fire up an online REPL such as REPL.it. I strongly recommend learning to use a good text editor, any of the following will do: VS Code, Sublime Text, Atom, Vim, Emacs, PyCharm.