Cay Horstmann's second edition of Python for Everyone provides a comprehensive and approachable introduction to fundamental programming techniques and design skills, and helps students master basic concepts and become competent coders. The inclusion of advanced chapters makes the text suitable for a 2 or 3-term sequence, or as a comprehensive reference to programming in Python. Major rewrites and an updated visual design make this student-friendly text even more engaging. Filled with realistic programming examples, a great quantity and variety of homework assignments, and lab exercises that build student problem-solving abilities, it is no surprise Python for Everyone is the number one text for early objects in the Python market. This text is an unbound, three hole punched
This is an excellent introduction to computer science through Python. Instead of focusing on learning Python by itself, it can easily be used as a stepping stone into other strongly-typed languages and object-oriented programming. If you want to focus on Python tricks and shortcuts, this is not the book for you. If you want a college level intro into programming and computer science that uses Python, then this is a great resource and textbook.
This was my book for an introduction to software development. It gave practical examples as well as the history behind python. I am a "why" type of learner, and this book gives great examples of why python is written the way it is.