The Python programming language has achieved astonishing success as a general-purpose tool for solving problems in data science, machine learning, scientific computing, web development, engineering, and virtually everything else. It’s universality is nothing short of astonishing, which means you have an entry point onto the pathway to becoming a Python rockstar in almost anything you’re interested in.
In this article, I chose to focus on learning python by building games and learning python through data science because I judged that those would be of most interest to readers. I could have chosen many, many other fields instead, and if you’re not interested in game development or data science I encourage you to consult Google for lists of Python resources related to your chosen field.
Learning Python Through Building Games
Gaming is a pretty significant on-ramp into the world of programming, with many ex-gamers becoming programmers and many of the best programmers having gotten their start tinkering with the source code for their favorite video games.
While Python isn’t actually a common game development language — programming for games is usually done in a lower-level language with more access to hardware — there are nevertheless a number of 3rd-party libraries and tutorials devoted to Python-based game building.
- Game Development Using Python, James Parker. This book walks you through the process of building a game engine with Python, covering topics like graphics and AI along the way.
- Invent Your Own Computer Games with Python, Al Sweigart. This is one of the first full Python books I read when I began learning on my own. The games tend to be simpler ones, like hangman or Guess the Number, but don’t let this fool you. Building even simple games is a challenge when you’re just starting out, and is a great way to learn all about the basics.
- Program Arcade Games: With Python and Pygame, Paul Craven. Now in its fourth edition, this book teaches Python and the library Pygame by having you build arcade games like the ones which, depending on your age, you either:
- played when you were a kid
- saw being played on Stranger Things.
Learning Python Through Data Science
Data Science ranks up there with web development as being one of the hottest careers of the moment, and Python is the major language used in most parts of the field.
Use these resources to get a handle on the Python language:
- Data Science Projects with Python, Stephen Klosterman. Building projects is the best way of learning technical skills, and that’s no different for the field of data science.
- Python for Data Analysis, Wes Mckinney. In addition to learning about Python, you’ll also gain crucial exposure to Pandas, Numpy, and Ipython.
- ThinkStats, Allen Downey. ThinkStats is a little intimidating if you don’t have a background in statistics, but if you put in the effort, it’s an outstanding introduction.
Whichever direction you choose, I hope you’ll find the process of learning Python as productive as I did. It will certainly open many doors for you.