Resources
Effective Python
125 specific ways to write better Python — covers Pythonic thinking, functions, classes, concurrency, and robustness
Python Crash Course
The most recommended Python book for beginners — hands-on, project-based, covering games, data visualisation, and web apps
Python Testing with pytest
The definitive guide to pytest by Brian Okken — covers fixtures, parametrize, plugins, and test organisation for writing effective, maintainable test suites
Automate the Boring Stuff with Python
Free online book teaching practical programming skills for automating everyday tasks