Gain a fundamental understanding of Python’s syntax and features with this 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, __Beginning Python__ also covers advanced topics such as extending Python and packaging/distributing Python applications.**What You'll Learn** * Become a proficient Python programmer by following along with a friendly, practical guide to the language’s key features * Write code faster by learning how to take advantage of advanced features such as magic methods, exceptions, and abstraction * Gain insight into modern Python programming paradigms including testing, documentation, packaging, and distribution * Learn by following along with ten interesting projects, including a P2P file–sharing application, chat client, video game, remote text editor, and more **Who This Book Is For** Programmers, novice and otherwise, seeking a comprehensive introduction to the Python programming language. Gain a fundamental understanding of Python's syntax and features with this 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, Beginning Python also covers advanced topics such as extending Python and packaging/distributing Python applications. What You'll Learn Become a proficient Python programmer by following along with a friendly, practical guide to the language's key features Write code faster by learning how to take advantage of advanced features such as magic methods, exceptions, and abstraction Gain insight into modern Python programming paradigms including testing, documentation, packaging, and distribution Learn by following along with ten interesting projects, including a P2P file--sharing application, chat client, video game, remote text editor, and more Who This Book Is For Programmers, novice and otherwise, seeking a comprehensive introduction to the Python programming language Front Matter....Pages i-xxxii Instant Hacking: The Basics....Pages 1-24 Lists and Tuples....Pages 25-44 Working with Strings....Pages 45-58 Dictionaries: When Indices Won’t Do....Pages 59-70 Conditionals, Loops, and Some Other Statements....Pages 71-99 Abstraction....Pages 101-127 More Abstraction....Pages 129-148 Exceptions....Pages 149-162 Magic Methods, Properties, and Iterators....Pages 163-193 Batteries Included....Pages 195-239 Files and Stuff....Pages 241-252 Graphical User Interfaces....Pages 253-259 Database Support....Pages 261-271 Network Programming....Pages 273-287 Python and the Web....Pages 289-306 Testing, 1-2-3....Pages 307-320 Extending Python....Pages 321-336 Packaging Your Programs....Pages 337-342 Playful Programming....Pages 343-351 Project 1: Instant Markup....Pages 353-371 Project 2: Painting a Pretty Picture....Pages 373-382 Project 3: XML for All Occasions....Pages 383-396 Project 4: In the News....Pages 397-408 Project 5: A Virtual Tea Party....Pages 409-424 Project 6: Remote Editing with CGI....Pages 425-433 Project 7: Your Own Bulletin Board....Pages 435-449 Project 8: File Sharing with XML-RPC....Pages 451-466 Project 9: File Sharing II—Now with GUI!....Pages 467-473 Project 10: Do-It-Yourself Arcade Game....Pages 475-493 Back Matter....Pages 495-527 Gain a fundamental understanding of Python's syntax and features with this 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, Beginning Python also covers advanced topics such as extending Python and packaging/distributing Python applications. You will: Become a proficient Python programmer by following along with a friendly, practical guide to the language's key features Write code faster by learning how to take advantage of advanced features such as magic methods, exceptions, and abstraction Gain insight into modern Python programming paradigms including testing, documentation, packaging, and distribution Learn by following along with ten interesting projects, including a P2P file-sharing application, chat client, video game, remote text editor, and more Offers an up-to-date introduction and practical reference to Python's syntax and features. 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 latest Python 3. Advanced topics such as extending Python and packaging/distributing Python applications, are also covered. --From publisher description "Beginning Python: From Novice to Professional" is the most comprehensive book on the Python ever written. Based on "Practical Python," this newly revised book is both an introduction and practical reference for a swath of Python-related programming topics, including addressing language internals, database integration, network programming, and web services. Advanced topics, such as extending Python and packaging/distributing Python applications, are also covered. Ten different projects illustrate the concepts introduced in the book. You will learn how to create a P2P file-s