Self-Study Resources for Learning Python Programming

Recommended Books

If you are already proficient in another object-oriented language, you may be able to learn Python using books and/or online learning resources. Different individuals have different preferences, and some individuals may still prefer to learn Python in a classroom setting.

Books recommended by students

Think Python: How to Think Like a Computer Scientist, 2nd Edition (Allen B.Downey)

How to Think Like a Computer Scientist: Learning with Python 3, 3rd Edition (Jeffrey Elkner, Allen B. Downey, and Chris Meyers)

Python for Data Analysis, 2nd edition: Data Wrangling with Pandas, NumPy, and IPython (Wes McKinney; O'Reilly Media, October 2017)

Dive into Python 3 (Mark Pilgrim; available online)
“Good but for more experienced programmers.”

Learning Python, 5th edition (Mark Lutz)
“Very thorough, yet easy to follow given some experience with programming.”
“The book was fine, not amazing.”

A Byte of Python (Swaroop C H)
“Recommend only in conjunction with a book with more narrative.”
“Good follow-up as a reference, though not as good to start with.”

Python Programming for the Absolute Beginner, 3rd edition (Michael Dawson)
“Yes, would recommend to beginners like me.”
“I actually enjoyed working through this book.”

Hello World! Computer Programming for Kids and Other Beginners, 3rd edition (Warren D. Sande and Carter Sande)
“A great read before ‘Think Python.’ ”
“My personal savior; though need a follow-up book.”

Online Tutorials

Tutorials at
“Like all tutorials, it cannot simply be read — it must be followed.” interactive Python tutorial

Tutorialspoint online basic & advanced Python tutorials

More lists of recommendations

Beginners Guide for Non-Programmers:

Introductory books:

Last updated:

November 30, 2020