Automate the Boring Stuff with Python
Al Sweigart
Blood, Sweat, and Pixels: The Triumphant, Turbulent Stories ...
Jason Schreier