Now Australia's Biggest Toy Store

We won't be beaten by anyone. Guaranteed

Core Python Programming

Praise for Core Python Programming "The long-awaited second edition of Wesley Chun's Core Python Programming proves to be well worth the wait-its deep and broad coverage and useful exercises will help readers learn and practice good Python." -Alex Martelli, author of Python in a Nutshell and editor of Python Cookbook "There has been lot of good buzz around Wesley Chun's Core Python Programming. It turns out that all the buzz is well earned. I think this is the best book currently available for learning Python. I would recommend Chun's book over Learning Python (O'Reilly), Programming Python (O'Reilly), or The Quick Python Book (Manning)." -David Mertz, Ph.D., IBM DeveloperWorks(R) "I have been doing a lot of research [on] Python for the past year and have seen a number of positive reviews of your book. The sentiment expressed confirms the opinion that Core Python Programming is now considered the standard introductory text." -Richard Ozaki, Lockheed Martin "Finally, a book good enough to be both a textbook and a reference on the Python language now exists." -Michael Baxter, Linux Journal "Very well written. It is the clearest, friendliest book I have come across yet for explaining Python, and putting it in a wider context. It does not presume a large amount of other experience. It does go into some important Python topics carefully and in depth. Unlike too many beginner books, it never condescends or tortures the reader with childish hide-and-seek prose games. [It] sticks to gaining a solid grasp of Python syntax and structure." - bookstore Web site "[If ] I could only own one Python book, it would be Core Python Programming by Wesley Chun. This book manages to cover more topics in more depth than Learning Python but includes it all in one book that also more than adequately covers the core language. [If] you are in the market for just one book about Python, I recommend this book. You will enjoy reading it, including its wry programmer's wit. More importantly, you will learn Python. Even more importantly, you will find it invaluable in helping you in your day-to-day Python programming life. Well done, Mr. Chun!" -Ron Stephens, Python Learning Foundation "I think the best language for beginners is Python, without a doubt. My favorite book is Core Python Programming." -s003apr, Forums "Personally, I really like Python. It's simple to learn, completely intuitive, amazingly flexible, and pretty darned fast. Python has only just started to claim mindshare in the Windows world, but look for it to start gaining lots of support as people discover it. To learn Python, I'd start with Core Python Programming by Wesley Chun." -Bill Boswell, MCSE, Microsoft Certified Professional Magazine Online "If you learn well from books, I suggest Core Python Programming. It is by far the best I've found. I'm a Python newbie as well and in three months time I've been able to implement Python in projects at work (automating MSOffice, SQL DB stuff, etc.)." -ptonman, Dev Shed Forums "Python is simply a beautiful language. It's easy to learn, it's cross-platform, and it works. It has achieved many of the technical goals that Java strives for. A one-sentence description of Python would be: 'All other languages appear to have evolved over time--but Python was designed.' And it was designed well. Unfortunately, there aren't a large number of books for Python. The best one I've run across so far is Core Python Programming." -Chris Timmons, C. R. Timmons Consulting "If you like the Prentice Hall Core series, another good full-blown treatment to consider would be Core Python Programming. It addresses in elaborate concrete detail many practical topics that get little, if any, coverage in other books." -Mitchell L Model, MLM Consulting "Core Python Programming is an amazingly easy read! The liberal use of examples helps clarify some of the more subtle points of the language. And the comparisons to languages with which I'm already familiar (C/C++/Java) get you programming in record speed." -Michael Santos, Ph.D., Green Hills Software The Complete Developer's Guide to Python *New to Python? The definitive guide to Python development for experienced programmers *Covers core language features thoroughly, including those found in the latest Python releases-learn more than just the syntax! *Learn advanced topics such as regular expressions, networking, multithreading, GUI, Web/CGI, and Python extensions *Includes brand-new material on databases, Internet clients, Java/Jython, and Microsoft Office, plus Python 2.6 and 3 *Presents hundreds of code snippets, interactive examples, and practical exercises to strengthen your Python skills Python is an agile, robust, expressive, fully object-oriented, extensible, and scalable programming language. It combines the power of compiled languages with the simplicity and rapid development of scripting languages. In Core Python Programming, Second Edition, leading Python developer and trainer Wesley Chun helps you learn Python quickly and comprehensively so that you can immediately succeed with any Python project. Using practical code examples, Chun introduces all the fundamentals of Python programming: syntax, objects and memory management, data types, operators, files and I/O, functions, generators, error handling and exceptions, loops, iterators, functional programming, object-oriented programming and more. After you learn the core fundamentals of Python, he shows you what you can do with your new skills, delving into advanced topics, such as regular expressions, networking programming with sockets, multithreading, GUI development, Web/CGI programming and extending Python in C. This edition reflects major enhancements in the Python 2.x series, including 2.6 and tips for migrating to 3. It contains new chapters on database and Internet client programming, plus coverage of many new topics, including new-style classes, Java and Jython, Microsoft Office (Win32 COM Client) programming, and much more. * Learn professional Python style, best practices, and good programming habits * Gain a deep understanding of Python's objects and memory model as well as its OOP features, including those found in Python's new-style classes * Build more effective Web, CGI, Internet, and network and other client/server applications * Learn how to develop your own GUI applications using Tkinter and other toolkits available for Python * Improve the performance of your Python applications by writing extensions in C and other languages, or enhance I/O-bound applications by using multithreading * Learn about Python's database API and how to use a variety of database systems with Python, including MySQL, Postgres, and SQLite * Features appendices on Python 2.6 & 3, including tips on migrating to the next generation! Core Python Programming delivers * Systematic, expert coverage of Python's core features * Powerful insights for developing complex applications * Easy-to-use tables and charts detailing Python modules, operators, functions, and methods * Dozens of professional-quality code examples, from quick snippets to full-fledged applications
Product Details

Table of Contents

Preface xxiiiAcknowledgments xxxvPart I: Core Python 2Chapter 1 Welcome to Python! 41.1 What Is Python? 5 1.2 Origins 6 1.3 Features 6 1.4 Downloading and Installing Python 11 1.5 Running Python 13 1.6 Python Documentation 22 1.7 Comparing Python 23 1.8 Other Implementations 26 1.9 Exercises 27 Chapter 2 Getting Started 302.1 Program Output, the print Statement, and "Hello World!" 32 2.2 Program Input and the raw_input() Built-in Function 33 2.3 Comments 35 2.4 Operators 35 2.5 Variables and Assignment 37 2.6 Numbers 37 2.7 Strings 39 2.8 Lists and Tuples 40 2.9 Dictionaries 40 2.10 Code Blocks Use Indentation 41 2.11 if Statement 41 2.12 while Loop 42 2.13 for Loop and the range() Built-in Function 43 2.14 List Comprehensions 45 2.15 Files and the open() and file() Built-in Functions 46 2.16 Errors and Exceptions 47 2.17 Functions 48 2.18 Classes 50 2.19 Modules 52 2.20 Useful Functions 54 2.21 Exercises 55 Chapter 3 Python Basics 603.1 Statements and Syntax 61 3.2 Variable Assignment 64 3.3 Identifiers 67 3.4 Basic Style Guidelines 69 3.5 Memory Management 75 3.6 First Python Programs 79 3.7 Related Modules/Developer Tools 84 3.8 Exercises 85 Chapter 4 Python Objects 884.1 Python Objects 89 4.2 Other Built-in Types 91 4.3 Internal Types 93 4.4 Standard Type Operators 96 4.5 Standard Type Built-in Functions 101 4.6 Categorizing the Standard Types 111 4.7 Unsupported Types 116 4.8 Exercises 117 Chapter 5 Numbers 1205.1 Introduction to Numbers 121 5.2 Integers 122 5.3 Double Precision Floating Point Numbers 125 5.4 Complex Numbers 126 5.5 Operators 127 5.6 Built-in and Factory Functions 136 5.7 Other Numeric Types 145 5.8 Related Modules 148 5.9 Exercises 151 Chapter 6 Sequences: Strings, Lists, and Tuples 1566.1 Sequences 158 6.2 Strings 168 6.3 Strings and Operators 170 6.4 String-Only Operators 178 6.5 Built-in Functions 184 6.6 String Built-in Methods 188 6.7 Special Features of Strings 192 6.8 Unicode 197 6.9 Related Modules 206 6.10 Summary of String Highlights 208 6.11 Lists 209 6.12 Operators 211 6.13 Built-in Functions 216 6.14 List Type Built-in Methods 220 6.15 Special Features of Lists 224 6.16 Tuples 232 6.17 Tuple Operators and Built-in Functions 233 6.18 Special Features of Tuples 235 6.19 Related Modules 239 6.20 *Copying Python Objects and Shallow and Deep Copies 240 6.21 Summary of Sequences 243 6.22 Exercises 246 Chapter 7 Mapping and Set Types 2527.1 Mapping Type: Dictionaries 253 7.2 Mapping Type Operators 258 7.3 Mapping Type Built-in and Factory Functions 260 7.4 Mapping Type Built-in Methods 265 7.5 Dictionary Keys 268 7.6 Set Types 273 7.7 Set Type Operators 276 7.8 Built-in Functions 280 7.9 Set Type Built-in Methods 281 7.10 Operator, Function/Method Summary Table for Set Types 283 7.11 Related Modules 283 7.12 Exercises 285 Chapter 8 Conditionals and Loops 2908.1 if Statement 291 8.2 else Statement 292 8.3 elif (aka else-if) Statement 294 8.4 Conditional Expressions (aka "the Ternary Operator") 295 8.5 while Statement 296 8.6 for Statement 298 8.7 break Statement 304 8.8 continue Statement 305 8.9 pass Statement 306 8.10 else Statement . . . Take Two 307 8.11 Iterators and the iter() Function 309 8.12 List Comprehensions 313 8.13 Generator Expressions 315 8.14 Related Modules 320 8.15 Exercises 320 Chapter 9 Files and Input/Output 3249.1 File Objects 325 9.2 File Built-in Functions [open() and file()] 326 9.3 File Built-in Methods 329 9.4 File Built-in Attributes 336 9.5 Standard Files 337 9.6 Command-Line Arguments 338 9.7 File System 339 9.8 File Execution 348 9.9 Persistent Storage Modules 348 9.10 Related Modules 351 9.11 Exercises 353 Chapter 10 Errors and Exceptions 35810.1 What Are Exceptions? 360 10.2 Exceptions in Python 361 10.3 Detecting and Handling Exceptions 364 10.4 Context Management 382 10.5 *Exceptions as Strings 386 10.6 Raising Exceptions 386 10.7 Assertions 389 10.8 Standard Exceptions 391 10.9 *Creating Exceptions 394 10.10 Why Exceptions (Now)? 401 10.11 Why Exceptions at All? 402 10.12 Exceptions and the sys Module 403 10.13 Related Modules 404 10.14 Exercises 405 Chapter 11 Functions and Functional Programming 40811.1 What Are Functions? 408 11.2 Calling Functions 409 11.3 Creating Functions 412 11.4 Passing Functions 418 11.5 Formal Arguments 428 11.6 Variable-Length Arguments 433 11.7 Functional Programming 439 11.8 Variable Scope 453 11.9 Recursion 466 11.10 Generators 467 11.11 Exercises 471 Chapter 12 Modules 47612.1 What Are Modules? 477 12.2 Modules and Files 478 12.3 Namespaces 480 12.4 Importing Modules 484 12.5 Features of Module Import 486 12.6 Module Built-in Functions 491 12.7 Packages 493 12.8 Other Features of Modules 496 12.9 Related Modules 500 12.10 Exercises 501 Chapter 13 Object-Oriented Programming 50413.1 Introduction 506 13.2 Object-Oriented Programming 514 13.3 Classes 518 13.4 Class Attributes 520 13.5 Instances 526 13.6 Instance Attributes 531 13.7 Binding and Method Invocation 540 13.8 Static Methods and Class Methods 542 13.9 Composition 544 13.10 Subclassing and Derivation 545 13.11 Inheritance 547 13.12 Built-in Functions for Classes, Instances, and Other Objects 558 13.13 Customizing Classes with Special Methods 564 13.14 Privacy 585 13.15 *Delegation 587 13.16 Advanced Features of New-Style Classes (Python 2.2+) 595 13.17 Related Modules and Documentation 615 13.18 Exercises 618 Chapter 14 Execution Environment 62614.1 Callable Objects 628 14.2 Code Objects 635 14.3 Executable Object Statements and Built-in Functions 636 14.4 Executing Other (Python) Programs 649 14.5 Executing Other (Non-Python) Programs 653 14.6 Restricted Execution 663 14.7 Terminating Execution 663 14.8 Miscellaneous Operating System Interface 666 14.9 Related Modules 668 14.10 Exercises 668 Part II: Advanced Topics 670Chapter 15 Regular Expressions 67215.1 Introduction/Motivation 673 15.2 Special Symbols and Characters 676 15.3 REs and Python 683 15.4 Regular Expressions Example 698 15.5 Exercises 705 Chapter 16 Network Programming 71016.1 Introduction 711 16.2 Sockets: Communication Endpoints 715 16.3 Network Programming in Python 718 16.4 *SocketServer Module 732 16.5* Introduction to the Twisted Framework 737 16.6 Related Modules 741 16.7 Exercises 742 Chapter 17 Internet Client Programming 74617.1 What Are Internet Clients? 747 17.2 Transferring Files 748 17.3 Network News 756 17.4 Electronic Mail 766 17.5 Related Modules 778 17.6 Exercises 779 Chapter 18 Multithreaded Programming 78618.1 Introduction/Motivation 787 18.2 Threads and Processes 789 18.3 Python, Threads, and the Global Interpreter Lock 790 18.4 thread Module 795 18.5 threading Module 800 18.6 Related Modules 814 18.7 Exercises 814 Chapter 19 GUI Programming 81819.1 Introduction 819 19.2 Tkinter and Python Programming 821 19.3 Tkinter Examples 826 19.4 Brief Tour of Other GUIs 840 19.5 Related Modules and Other GUIs 848 19.6 Exercises 851 Chapter 20 Web Programming 85420.1 Introduction 855 20.2 Web Surfing with Python: Creating Simple Web Clients 859 20.3 Advanced Web Clients 869 20.4 CGI: Helping Web Servers Process Client Data 875 20.5 Building CGI Applications 878 20.6 Using Unicode with CGI 892 20.7 Advanced CGI 894 20.8 Web (HTTP) Servers 906 20.9 Related Modules 909 20.10 Exercises 913 Chapter 21 Database Programming 91821.1 Introduction 919 21.2 Python Database Application Programmer's Interface (DB-API) 924 21.3 Object-Relational Managers (ORMs) 946 21.4 Related Modules 958 21.5 Exercises 960 Chapter 22 Extending Python 96222.1 Introduction/Motivation 963 22.2 Extending Python by Writing Extensions 965 22.3 Related Topics 981 22.4 Exercises 982 Chapter 23 Miscellaneous 98423.1 Web Services 985 23.2 Programming Microsoft Office with Win32 COM 989 23.3 Python and Java Programming with Jython 1002 23.4 Exercises 1006 Appendix A Answers to Selected Exercises 1011Appendix B Reference Tables 1021Index 1049

Promotional Information

Python is very easy to learn for programmers familiar with other languages such as C, C++, Java, and Visual Basic, and can significantly increase programmer productivity. It is often characterized as an agile language that promotes speedy development. The language is the basis of applications used by tens of thousands of companies and organizations worldwide, and its user base is growing rapidly, as evidenced by its use by large companies such as Google. In Core Python Programming, Second Edition, Internet software engineer and technical trainer Wesley Chun provides intermediate and experienced developers all they need to know to learn Python-fast. Like all Core Series books, it delivers hundreds of industrial-strength code snippets and examples, all targeted at professional developers who want to leverage their existing skills! It covers the core parts of the Python language and advanced topics by providing real-world insights for devloping web applications. By using a relaxed, fun writing style, the author is able to explain complex programming concepts in ways that are easy to understand. The book also includes extensive code examples, in addition to several complete sample applications.

About the Author

Wesley J. Chun currently runs a consulting business specializing in Python software engineering and technical corporate training ( He has been programming, teaching, and writing since 1980, including more than a decade's experience with Python. While at Yahoo!, he helped create Yahoo!Mail and Yahoo! People Search using Python. He holds degrees in computer science, mathematics, and music from the University of California.

Ask a Question About this Product More...
Write your question below:
Look for similar items by category
Home » Books
Home » Books » Computers » Programming » General
How Fishpond Works
Fishpond works with suppliers all over the world to bring you a huge selection of products, really great prices, and delivery included on over 25 million products that we sell. We do our best every day to make Fishpond an awesome place for customers to shop and get what they want — all at the best prices online.
Webmasters, Bloggers & Website Owners
You can earn a 5% commission by selling Core Python Programming on your website. It's easy to get started - we will give you example code. After you're set-up, your website can earn you money while you work, play or even sleep! You should start right now!
Authors / Publishers
Are you the Author or Publisher of a book? Or the manufacturer of one of the millions of products that we sell. You can improve sales and grow your revenue by submitting additional information on this title. The better the information we have about a product, the more we will sell!
Item ships from and is sold by, Inc.
Back to top