Python 101 by Michael Driscoll and Tyler Sowles
Part One The first part is the beginner section. In it you will learn all the basics of Python. From Python types (strings, lists, dictionaries) to conditional statements to loops. You will also learn about comprehensions, functions and classes and everything in between! Part Two This section will be a curated tour of the Python Standard Library. The intent isn't to cover everything in it, but instead it is to show the reader that you can do a lot with Python right out of the box. We'll be covering the modules I find the most useful in day-to-day programming tasks, such as os, sys, logging, threads, and more. Part Three This section is all intermediate level material. It covers the following: lamda, decorators, properties, debugging, testing, and profiling. Part Four Now things get really interesting! In part four, we will be learning how to install 3rd party libraries (i.e. packages) from the Python Package Index and other locations. We will cover easy_install and pip. This section will also be a series of tutorials where you will learn how to use the packages you download. For example, you will learn how to download a file, parse XML, use an Object Relational Mapper to work with a database, etc. Part Five The last section of the book will cover how to share your code with your friends and the world! You will learn how to package it up and share it on the Python Package Index (i.e. how to create an egg or wheel). You will also learn how to create executables using py2exe, bb_freeze, cx_Freeze and PyInstaller. Finally you will learn how to create an installer using Inno Setup. Writing Style This book is written using my original blogging style. This means that the chapters will be shorter than your usual programming textbook. Most chapters will most likely be less than 10 pages! The idea here is to get the reader up to speed on the subject, not to beat them over the head with it.