• Python 2
  • Python 3
Reading time
  • Approximately 56 days
What you will learn
  • Programming Basics and Python Syntax
  • Web Development
  • Games
  • Numerical Programming and Data Mining
  • Web Scraping
  • Eric Matthes
  • 3 years, 4 months ago
Packages you will be introduced to
  • pygal
  • requests
  • matplotlib
  • pygame
  • django

Official description

Python Crash Course is a fast-paced, thorough introduction to programming with Python that will have you writing programs, solving problems, and making things that work in no time.

In the first half of the book, you'll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. You'll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you'll put your new knowledge into practice with three substantial projects: a Space Invaders-inspired arcade game, data visualizations with Python's super-handy libraries, and a simple web app you can deploy online.

As you work through Python Crash Course, you'll learn how to:

  • Use powerful Python libraries and tools, including matplotlib, NumPy, and Pygal
  • Make 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progresses
  • Work with data to generate interactive visualizations
  • Create and customize simple web apps and deploy them safely online
  • Deal with mistakes and errors so you can solve your own programming problems

If you've been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code!


There are 1 reviews for this book on GitHub.
rfreiberger left a review on GitHub 1 year ago.

⭐️ ⭐️ ⭐️ ⭐️ ⭐️ Best balance between intro and core software development skills

I'm no Python expert or software developer by trade, my experience with programming is mostly from college and short hacks for work. When I started to explore Python, the most recommended book was "Python the hard way" which taught you a great depth of Python but I really didn't understand the writing style of the book. Felt like it was very much directed towards doing repeat exercises without fundamentals, think of this like being told how to use a hammer, but I never tell you why to use a hammer or another tool. Towards the end of the book, I lost interest and moved to other Python books searching for something that expanded the core of Python but also was easy enough to grasp.

After buying books and reading reviews, I stumbled across Python Crash Course simply because No Starch was having a sale and I picked up the book as one of its early releases. At first, it comes off like every other Python book for new coders, very entry level, you print foo so many times, I'm sure you know how this goes. But as I read further, the examples given were clearly driven through each chapter. An example of this is the chapter on dictionaries, something which I never used before in Python beyond copy/type coding. The chapter gives you a good intro, plenty of examples, and finally, the end of the chapter questions are logic but also tough (in fact some I had to resort to friends at work for help).

One of the benefits of this book is that it teaches you why to use a Python feature or module, instead of just telling you to use it. This is like someone showing you how to use a box full of tools instead of telling you how to build a bird house. Once you build the bird house, you may get stuck on your next project since the core concepts of Python are not well understood. This is where I see many people get stuck after finishing a book, they don't know how to do the next challenge.

Something I like to also address is that many "beginner" books for Python are divided into two sections, either they are focused for a seasoned software developer who is entering the Python world, or they are written for someone who never used a computer before. This might sound harsh, but I've read so many beginner Python books that start at the very basic and never move beyond creating loops or very very basic examples. Then, on the other hand, some intro to Python books jump you right into classes and object oriented programming. Python Crash Course is why I would call the best mix of leveling you up from having some programming experience to someone who could understand why testing and oop programming styles are used in the real world.

This book helped me understood how to use unit testing in Python which I really struggled with for many years and helped me teach my team how to use this as well. That alone was worth the price of the book.

The only area I cannot comment much on is the projects part of the book which I haven't completed yet. Briefly reading the chapters they focus on helpful projects which I believe could have work place benefits (something nice as you learn and also help build tools or reports for work). The only issue I had with this book is the range of chapter quizes varied greatly in their difficulty, in some cases making me restort to checking the Internet. Other than that, I still think that this is the best book for the money, and the best book for anyone who wants to get started into Python programming with a small amount of previous programming experience.

Write a review

Read this book? Comment on this book's GitHub issue page and share what you liked and what you didn't like about it. Your GitHub comment will show up as a review here.