Highly recommended
- Python3 Visualization: virtually execute programs one step at a time
- The cheatsheet has all the Python syntax we use at a glance.
- Invent Your Own Computer Games With Python, and the sequel about PyGame for animated games
- How to Think Like a Computer Scientist: Learning with Python, Interactive Edition
- Python 3 online index is a good source of official information
- Sphere/SPOJ auto-judge for Python 3 and many other languages, and contests
Our lessons use Python 3, the newest and most streamlined version of the language. However, Python 2 is also quite commonly used. It takes a little time to learn the important differences between Python 2 and Python 3. Here are some more resources using Python 2, and other popular languages.
Contests and Problem-Solving
- contests allowing Python 3 and other languages: CCC, ACSL, ECOO
- projecteuler.net, a language-independent computational math problem suite
- TopCoder (includes tutorials): C++ and Java
- PEG Judge (especially ‘blue book’ problems for beginners): Python 2 and many other languages
- USACO Trainer: C++, Java, and Pascal
- high-school contests: DWITE, USACO
- Pyschools has online Python 2 exercises

