by Zed A. Shaw
In Learn Python the Hard Way, Third Edition, you'll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you'll learn how the software works; what good programs look like; how to read, write, and think about code; and how to find and fix your mistakes using tricks professional programmers use. Most importantly, you'll learn the following, which you need to start writing excellent Python software of your own:
- Installing a complete Python environment
- Organizing and writing code
- Basic mathematics
- Strings and text
- Interacting with users
- Working with files
- Looping and logic
- Data structures using lists and dictionaries
- Program design
- Object-oriented programming
- Inheritance and composition
- Modules, classes, and objects
- Python packaging
- Automated testing
- Basic game development
- Basic web development
by Brett Slatkin
It's easy to start coding with Python, which is why the language is so popular. However, Python's unique strengths, charms, and expressiveness can be hard to grasp, and there are hidden pitfalls that can easily trip you up.
Effective Python will help you master a truly "Pythonic" approach to programming, harnessing Python's full power to write exceptionally robust and well-performing code. Using the concise, scenario-driven style pioneered in Scott Meyersa best-selling Effective C++, Brett Slatkin brings together 59 Python best practices, tips, and shortcuts, and explains them with realistic code examples.
Key features include
- Actionable guidelines for all major areas of Python 3.x and 2.x development, with detailed explanations and examples
- Best practices for writing functions that clarify intention, promote reuse, and avoid bugs
- Coverage of how to accurately express behaviors with classes and objects
- Guidance on how to avoid pitfalls with metaclasses and dynamic attributes
- More efficient approaches to concurrency and parallelism
- Better techniques and idioms for using Python's built-in modules
- Tools and best practices for collaborative development
- Solutions for debugging, testing, and optimization in order to improve quality and performance
by Mark Pilgrim
Mark Pilgrim's Dive Into Python 3 is a hands-on guide to Python 3 and its differences from Python 2. As in the original book, Dive Into Python, each chapter starts with a real, complete code sample, proceeds to pick it apart and explain the pieces, and then puts it all back together in a summary at the end.
This book includes:
- Example programs completely were rewritten to illustrate powerful new concepts now available in Python 3: sets, iterators, generators, closures, comprehensions, and much more
- A detailed case study of porting a major library from Python 2 to Python 3
- A comprehensive appendix of all the syntactic and semantic changes in Python 3
- This is the perfect resource for you if you need to port applications to Python 3, or if you like to jump into languages fast and get going right away.
by Magnus Lie Hetland
Gain a fundamental understanding of Python's syntax and features with the second edition of Beginning Python, an up-to-date introduction and practical reference. Covering a wide array of Python-related programming topics, including addressing language internals, database integration, network programming, and web services, you'll be guided by sound development principles. Ten accompanying projects will ensure you can get your hands dirty in no time.
Updated to reflect the latest in Python programming paradigms and several of the most crucial features found in Python 3.0 (otherwise known as Python 3000), advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.
by Tony Gaddis
Starting Out with Python discusses control structures, functions, arrays, and pointers before objects and classes. As with all Gaddis texts, clear and easy-to-read code listings, concise and practical real-world examples, detail-oriented explanations, and an abundance of exercises appear in every chapter.
MyProgrammingLab for Starting Out with Python is a total learning package. MyProgrammingLab is an online homework, tutorial, and assessment program that truly engages students in learning. It helps students better prepare for class, quizzes, and exams-resulting in better performance in the course-and provides educators a dynamic set of tools for gauging individual and class progress.
This program presents a better teaching and learning experience-for you and your students. It will help:
- Personalize Learning with MyProgrammingLab: Through the power of practice and immediate personalized feedback, MyProgrammingLab helps students fully grasp the logic, semantics, and syntax of programming.
- Enhance Learning with the Gaddis Approach: Gaddis's accessible approach features clear and easy-to-read code listings, concise real-world examples, and exercises in every chapter.
- Support Instructors and Students: Student and instructor resources are available to expand on the topics presented in the text.