Python Crash Course
A Hands-On, Project-Based Introduction to Programming
This is a tutoring curriculum for learning Python using Python Crash Course, 2nd Edition, an introductory programming book from No Starch Press by Eric Matthes.
Get Started
If you are a student following this curriculum for the first time, please jump to the setup instructions below below.
Homework
Exercises ✍🏽
The book has several sections that reinforce learning through exercises. Practice what you just read where you see:
Links to the Try It Yourself Exercises
-
Getting Started Chapter 1
-
Variables And Simple Data Types Chapter 2
-
Introducing Lists Chapter 3
-
Working With Lists Chapter 4
-
If Statements Chapter 5
-
Dictionaries Chapter 6
-
User Input And While Loops Chapter 7
-
Functions Chapter 8
-
Classes Chapter 9
-
Files And Exceptions Chapter 10
-
Testing Your Code Chapter 11
-
A Ship That Fires Bullets Chapter 12
-
Aliens! Chapter 13
-
Scoring Chapter 14
-
Generating Data Chapter 15
-
Downloading Data Chapter 16
-
Working With API’s Chapter 17
-
Getting Started With Django Chapter 18
-
User Accounts Chapter 19
-
Styling And Deploying An App Chapter 20
Solutions
After you have tried the exercises yourself, you can check the author’s implementations to compare. The author’s solutions to the homework may be found here.
Setup Instructions
Here you can find instructions for:
- Installing Python (Appendix A)
- Installing and configuring Python (Chapter 1)
- Installing and using pip (Chapter 12)
- Installing Pygame (Chapter 12)
- Installing matplotlib and Pygal (Chapter 15)
- Creating a Virtual Environment (Chapter 18)
- Deploying a Project to Heroku (Chapter 20)
Downloading source code
Students will be assigned chapters from this book using GitHub classroom.
If you are not a student, a direct way to get these online resources is to download as a ZIP file.
Click on the button, which will download the source code files (and other resources) for the entire book.
A more flexible way is to fork this repository and clone it to your local computer using git
.
Cheat Sheets
Cheat sheets can be really helpful when you’re working on a set of programming exercises or a project. This set of cheat sheets will help remind you of the concepts you’re learning, as well as the Python syntax for these concepts.
Updates
Some of the PyPI libraries featured in the book have been updated recently, which is a good thing — it means that the Python packages you’re learning to use are being steadily improved.
When packages are updated you have the option of using the version that was featured in the book, which lets you run code exactly as it’s written in the book. You can also choose to install the latest version of each package, and modify the code in the book slightly. Each approach is outlined clearly in these updates.
A list of updates is kept here.
Contact
If you have any questions about Python Crash Course, please join the Discord server , contact Mavaddat, or get in touch with the book’s author, 📧 .
Table of contents
- Coding is political
- Updates
- Solutions
- Reader Questions
- Finding Employment
- Survey
- Mailing List
- Contact
- A Ship That Fires Bullets
- Afterward
- Aliens!
- Classes
- Dictionaries
- Downloading Data
- Files And Exceptions
- Functions
- Generating Data
- Getting Help
- Getting Started
- Getting Started With Django
- If Statements
- Installing Python
- Introducing Lists
- Scoring
- Styling And Deploying An App
- Testing Your Code
- Text Editors
- Thank you for subscribing!
- User Accounts
- User Input And While Loops
- Using Git For Version Control
- Variables And Simple Data Types
- Working With APIs
- Working With Lists