# Awesome Python Books [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) > Directory of Python books ## Table of Contents - [Grammar](#grammar) - [Data Structures and Algorithms](#data-structures-and-algorithms) - [Game Development](#game-development) - [Hardware](#hardware) - [Machine Learning](#machine-learning) - [Deep Learning](#deep-learning) - [Natural Language Processing](#natural-language-processing) - [Network](#network) - [Science and Data Analysis](#science-and-data-analysis) - [Security](#security) - [SQL and ORMs](#sql-and-orms) - [System Administration](#system-administration) - [Testing](#testing) - [Web Development](#web-development) - [Web Scraping](#web-scraping) ## Grammar ### Zero Basis - *A Byte of Python* by Swaroop C H [English Edition](http://www.amazon.com/Byte-Python-Swaroop-C-H/dp/1514828146) - *Hello World!: Computer Programming for Kids and Other Beginners* by Warren Sande & Carter Sande [English 2nd Edition](http://www.amazon.com/Hello-World-Computer-Programming-Beginners/dp/1617290920) - *Python for Kids: A Playful Introduction to Programming* by Jason R. Briggs [English Edition](http://www.amazon.com/Python-Kids-Playful-Introduction-Programming/dp/1593274076) - *Learn Python the Hard Way* by Zed A. Shaw [English 3rd Edition](http://www.amazon.com/Learn-Python-Hard-Way-Introduction/dp/0321884914) - *Python Programming for the Absolute Beginner* by Michael Dawson [English 2nd Edition](http://www.amazon.com/Python-Programming-Absolute-Beginner-Edition/dp/1598631128) - *Introduction to Computation and Programming Using Python* by John V. Guttag [English Edition](http://www.amazon.com/Introduction-Computation-Programming-Using-Python/dp/0262525003) ### Primary - *The Quick Python Book* by Naomi Ceder [English 3rd Edition](https://www.amazon.com/Quick-Python-Book-Naomi-Ceder/dp/1617294039) - *Beginning Python: from Novice to Professional* by Magnus Lie Hetland [English 2nd Edition](http://www.amazon.com/Beginning-Python-Professional-Experts-Professionals/dp/1590599829) - *Think Python: How to Think Like a Computer Scientist* by Allen B. Downey [English 2nd Edition](http://www.amazon.com/Think-Python-Like-Computer-Scientist/dp/1491939362) - *Learning Python* by Mark Lutz [English 5th Edition](http://www.amazon.com/Learning-Python-Edition-Mark-Lutz/dp/1449355730) - *Programming Python* by Mark Lutz [English 4th Edition](http://www.amazon.com/gp/product/0596158106) - *Core Python Programming* by Wesley Chun [English 2nd Edition](http://www.amazon.com/Core-Python-Programming-Wesley-Chun/dp/0132269937) - *Python Crash Course* by Eric Matthes [English Edition](https://www.amazon.com/Python-Crash-Course-Hands-Project-Based/dp/1593276036/) - *Python Programming: An Introduction to Computer Science* by John Zelle [English 3rd Edition](http://a.co/d/gym77UH) - *Tiny Python Projects* by Ken Youens-Clark [English 1st Edition](https://www.manning.com/books/tiny-python-projects), see also [GitHub repo](https://github.com/kyclark/tiny_python_projects) ### Intermediate - *Python 3 Object-Oriented Programming* by Dusty Phillips [English 2nd Edition](https://www.amazon.com/Python-3-Object-Oriented-Programming-Second/dp/1784398780) - *The Hacker's Guide to Python* by Julien Danjou [English Edition](http://www.amazon.com/Hackers-Guide-Python-Julien-Danjou/dp/1304819248) - *Python in Practice: Create Better Programs Using Concurrency, Libraries, and Patterns* by Mark Summerfield [English Edition](http://www.amazon.com/Python-Practice-Concurrency-Libraries-Developers/dp/0321905636) - *Expert Python Programming: Best practices for designing, coding, and distributing your Python software* by Tarek Ziadé [English Edition](http://www.amazon.com/Expert-Python-Programming-practices-distributing/dp/184719494X) - *Core Python Applications Programming* by Wesley Chun [English 3rd Edition](http://www.amazon.com/Core-Python-Applications-Programming-3rd/dp/0132678209) - *Intermediate Python* [Online](http://book.pythontips.com/en/latest/) - *Effective Python: 59 Specific Ways to Write Better Python* [English Edition](https://www.amazon.com/Effective-Python-Specific-Software-Development/dp/0134034287) - *Fluent Python* by Luciano Ramalho [English Edition](http://www.amazon.com/Fluent-Python-Luciano-Ramalho/dp/1491946008) - *Learning Python Design Patterns* by Chetan Giridhar [English 2nd Edition](http://www.amazon.com/Learning-Python-Design-Patterns-Second/dp/178588803X) - *Mastering Python Design Patterns* by Sakis Kasampalis [English Edition](https://www.amazon.com/Mastering-Python-Design-Patterns-Kasampalis/dp/1783989327) - *The Well-Grounded Python Developer* by Doug Farrell [English Edition](https://www.manning.com/books/the-well-grounded-python-developer?a_aid=the_well_grounded_python_developer&a_bid=e505681b) ### Advanced - *Mastering Python High Performance* by Fernando Doglio [English Edition](https://www.amazon.com/Mastering-Python-Performance-Fernando-Doglio/dp/1783989300) - *High Performance Python: Practical Performant Programming for Humans* by Micha Gorelick [English Edition](http://www.amazon.com/High-Performance-Python-Performant-Programming/dp/1449361595) - *Cython - A Guide for Python Programmers* by Kurt W. Smith [English Edition](http://www.amazon.com/Cython-Kurt-W-Smith/dp/1491901551) - *CPython Internals: Your Guide to the Python 3 Interpreter* by Anthony Shaw [English Edition](https://www.amazon.com/CPython-Internals-Guide-Python-Interpreter/dp/1775093344) ### References - *The Python Standard Library by Example* by Doug Hellmann [English Edition](http://www.amazon.com/Python-Standard-Library-Example-Developers/dp/0321767349) - *Python Cookbook* by David Beazley & Brian K. Jones [English 3rd Edition](http://www.amazon.com/Python-Cookbook-Third-David-Beazley/dp/1449340377) - *Python Essential Reference* by David M. Beazley [English 4th Edition](http://www.amazon.com/Python-Essential-Reference-4th-Edition/dp/0672329786) - *Python in a Nutshell* by Alex Martelli [English 2nd Edition](http://www.amazon.com/Python-Nutshell-Second-Edition-In/dp/0596100469) ## Data Structures and Algorithms - *Classic Computer Science Problems in Python* by David Kopec [English Edition](https://www.manning.com/books/classic-computer-science-problems-in-python) - *Data Structures and Algorithms in Python* by Michael T. Goodrich & Roberto Tamassia & Michael H. Goldwasser [English Edition](https://www.amazon.com/Structures-Algorithms-Goodrich-Goldwasser-Hardcover/dp/B011DC80VY/) - *Problem Solving with Algorithms and Data Structures Using Python* by Bradley N. Miller & David L. Ranum [English 2nd Edition](https://www.amazon.com/Problem-Solving-Algorithms-Structures-Python/dp/1590282574) - *Python Algorithms: Mastering Basic Algorithms in the Python Language* by Magnus Lie Hetland [English 2nd Edition](http://www.amazon.com/Python-Algorithms-Mastering-Basic-Language/dp/148420056X) ## Complexity Science - *Think Complexity: Complexity Science and Computational Modeling* by Allen B. Downey [English Edition](https://www.amazon.com/Think-Complexity-Science-Computational-Modeling/dp/1449314635) ## Game Development - *Making Games with Python & Pygame* by Al Sweigart [English Edition](http://www.amazon.com/Making-Games-Python-Pygame-Sweigart/dp/1469901730) ## Hardware - *Real World Instrumentation with Python: Automated Data Acquisition and Control Systems* by John M. Hughes [English Edition](http://www.amazon.com/Real-World-Instrumentation-Python-Acquisition/dp/0596809565) ## Machine Learning - *Building Machine Learning Systems with Python* by Luis Pedro Coelho & Willi Richert [English 2nd Edition](http://www.amazon.com/Building-Machine-Learning-Systems-Python/dp/1784392774) - *Machine Learning in Action* by Peter Harrington [English Edition](http://www.amazon.com/Machine-Learning-Action-Peter-Harrington/dp/1617290181) - *Programming Collective Intelligence: Building Smart Web 2.0 Applications* by Toby Segaran [English Edition](http://www.amazon.com/Programming-Collective-Intelligence-Building-Applications/dp/0596529325) - *Python Machine Learning* by Sebastian Raschka [English Edition](http://www.amazon.com/Python-Machine-Learning-Sebastian-Raschka/dp/1783555130/ref=tmm_pap_title_0?_encoding=UTF8&qid=&sr=) - *Machine Learning: An Algorithmic Perspective* by Stephen Marsland [English 2nd Edition](https://www.amazon.com/Machine-Learning-Algorithmic-Perspective-Recognition/dp/1466583282/) ## Deep Learning - *Practical Deep Learning Book for Cloud, Mobile & Edge: Real-World AI and Computer Vision Projects Using Python, Keras and TensorFlow* by Anirudh Koul, Siddha Ganju, & Meher Kasam [[English 1st Edition](https://www.amazon.com/gp/product/149203486X?) | [Online](https://www.oreilly.com/library/view/practical-deep-learning/9781492034858/) | [GitHub](https://github.com/PracticalDL/Practical-Deep-Learning-Book)] - *Deep Learning for Coders with Fastai and PyTorch: AI Applications Without a PhD* by Jeremy Howard & Sylvain Gugger [English 1st Edition](https://www.amazon.com/Deep-Learning-Coders-fastai-PyTorch/dp/1492045527) - *Deep Learning* by Ian Goodfellow, Yoshua Bengio, Aaron Courville & Francis Bach [English 1st Edition](https://www.amazon.com/dp/0262035618) ## Natural Language Processing - *Mastering Python Regular Expressions* by Felix Lopez & Victor Romero [English Edition](http://www.amazon.com/Mastering-Python-Regular-Expressions-Felix/dp/1783283157/) - *Natural Language Processing with Python* by Steven Bird & Ewan Klein & Edward Loper [English Edition](http://www.amazon.com/Natural-Language-Processing-Python-Steven/dp/0596516495) ## Network - *Foundations of Python Network Programming* by Brandon Rhodes, John Goerzen [English 3rd Edition](https://www.amazon.com/Foundations-Python-Network-Programming-Brandon/dp/1430258543) ## Science and Data Analysis - *Data Science From Scratch: First Principles with Python* by Joel Grus [English Edition](http://www.amazon.com/Data-Science-Scratch-Principles-Python/dp/149190142X) - *Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython* by Wes McKinney [English Edition](http://www.amazon.com/Python-Data-Analysis-Wrangling-IPython/dp/1449319793) - *SciPy and NumPy: An Overview for Developers* by Eli Bressert [English Edition](http://www.amazon.com/SciPy-NumPy-Developers-Eli-Bressert/dp/1449305466) - *NumPy Beginner's Guide* by Ivan Idris [English 3rd Edition](http://www.amazon.com/Numpy-Beginners-Guide-Ivan-Idris/dp/1785281968) / [English 2nd Edition](http://www.amazon.com/NumPy-Beginners-Guide-Second-Edition/dp/1782166084) - *Python for Finance: Analyze Big Financial Data* by Yves Hilpisch [English Edition](http://www.amazon.com/Python-Finance-Analyze-Financial-Data/dp/1491945281) - *A Programmer's Guide to Data Mining* by Ron Zacharski [Online](http://guidetodatamining.com/) - *Pandas in Action* by Boris Paskhaver [English Edition](https://www.manning.com/books/pandas-in-action) ## Security - *Black Hat Python: Python Programming for Hackers and Pentesters* by Justin Seitz [English Edition](http://www.amazon.com/Black-Hat-Python-Programming-Pentesters/dp/1593275900) - *Gray Hat Python: Python Programming for Hackers and Reverse Engineers* by Justin Seitz [English Edition](http://www.amazon.com/Gray-Hat-Python-Programming-Engineers/dp/1593271921) - *Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers* by TJ O'Connor [English Edition](http://www.amazon.com/Violent-Python-Cookbook-Penetration-Engineers/dp/1597499579) ## SQL and ORMs - *Essential SQLAlchemy* by Jason Myers [English Edition](http://www.amazon.com/Essential-SQLAlchemy-Jason-Myers/dp/149191646X/) ## System Administration - *Python for Unix and Linux System Administration* by Noah Gift & Jeremy Jones [English Edition](http://www.amazon.com/Python-Unix-Linux-System-Administration/dp/0596515820) ## Testing - *Testing Python: Applying Unit Testing, TDD, BDD and Acceptance Testing* by David Sale [English Edition](http://www.amazon.com/Testing-Python-Applying-Unit-Acceptance/dp/1118901223/) ## Web Development - *Flask Web Development: Developing Web Applications with Python* by Miguel Grinberg [English Edition](http://www.amazon.com/Flask-Web-Development-Developing-Applications/dp/1449372627) - *Mastering Flask* by Jack Stouffer [English Edition](https://www.amazon.com/Mastering-Flask-Jack-Stouffer/dp/1784393657) - *Introduction to Tornado* by Michael Dory & Allison Parrish & Brendan Berg [English Edition](http://www.amazon.com/Introduction-Tornado-Michael-Dory/dp/1449309070) - *The Definitive Guide to Django* by Adrian Holovaty & Jacob Kaplan-Moss [English 2nd Edition](https://www.amazon.com/dp/143021936X/) - *Test-Driven Development with Django* by Kevin Harvey [English Edition](http://www.amazon.com/Test-Driven-Development-Django-Kevin-Harvey-ebook/dp/B00YSILNJW/) - *Test-Driven Development with Python* by Harry J. W. Percival [English Edition](http://www.amazon.com/Test-Driven-Development-Python-Harry-Percival/dp/1449364829) ## Web Scraping - *Web Scraping with Python: A Comprehensive Guide to Data Collection Solutions* by Ryan Mitchell [English Edition](http://www.amazon.com/Web-Scraping-Python-Collecting-Modern/dp/1491910291) ## Other Awesome Lists - [awesome-python](https://github.com/vinta/awesome-python) - [awesome-flask](https://github.com/humiaozuzu/awesome-flask)