How does Fishpond Work?

Shop over 1.5 Million Toys in our Huge New Range

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? 51.2 Origins 61.3 Features 61.4 Downloading and Installing Python 111.5 Running Python 131.6 Python Documentation 221.7 Comparing Python 231.8 Other Implementations 261.9 Exercises 27Chapter 2 Getting Started 302.1 Program Output, the print Statement, and "Hello World!" 322.2 Program Input and the raw_input() Built-in Function 332.3 Comments 352.4 Operators 352.5 Variables and Assignment 372.6 Numbers 372.7 Strings 392.8 Lists and Tuples 402.9 Dictionaries 402.10 Code Blocks Use Indentation 412.11 if Statement 412.12 while Loop 422.13 for Loop and the range() Built-in Function 432.14 List Comprehensions 452.15 Files and the open() and file() Built-in Functions 462.16 Errors and Exceptions 472.17 Functions 482.18 Classes 502.19 Modules 522.20 Useful Functions 542.21 Exercises 55Chapter 3 Python Basics 603.1 Statements and Syntax 613.2 Variable Assignment 643.3 Identifiers 673.4 Basic Style Guidelines 693.5 Memory Management 753.6 First Python Programs 793.7 Related Modules/Developer Tools 843.8 Exercises 85Chapter 4 Python Objects 884.1 Python Objects 894.2 Other Built-in Types 914.3 Internal Types 934.4 Standard Type Operators 964.5 Standard Type Built-in Functions 1014.6 Categorizing the Standard Types 1114.7 Unsupported Types 1164.8 Exercises 117Chapter 5 Numbers 1205.1 Introduction to Numbers 1215.2 Integers 1225.3 Double Precision Floating Point Numbers 1255.4 Complex Numbers 1265.5 Operators 1275.6 Built-in and Factory Functions 1365.7 Other Numeric Types 1455.8 Related Modules 1485.9 Exercises 151Chapter 6 Sequences: Strings, Lists, and Tuples 1566.1 Sequences 1586.2 Strings 1686.3 Strings and Operators 1706.4 String-Only Operators 1786.5 Built-in Functions 1846.6 String Built-in Methods 1886.7 Special Features of Strings 1926.8 Unicode 1976.9 Related Modules 2066.10 Summary of String Highlights 2086.11 Lists 2096.12 Operators 2116.13 Built-in Functions 2166.14 List Type Built-in Methods 2206.15 Special Features of Lists 2246.16 Tuples 2326.17 Tuple Operators and Built-in Functions 2336.18 Special Features of Tuples 2356.19 Related Modules 2396.20 *Copying Python Objects and Shallow and Deep Copies 2406.21 Summary of Sequences 2436.22 Exercises 246Chapter 7 Mapping and Set Types 2527.1 Mapping Type: Dictionaries 2537.2 Mapping Type Operators 2587.3 Mapping Type Built-in and Factory Functions 2607.4 Mapping Type Built-in Methods 2657.5 Dictionary Keys 2687.6 Set Types 2737.7 Set Type Operators 2767.8 Built-in Functions 2807.9 Set Type Built-in Methods 2817.10 Operator, Function/Method Summary Table for Set Types 2837.11 Related Modules 2837.12 Exercises 285Chapter 8 Conditionals and Loops 2908.1 if Statement 2918.2 else Statement 2928.3 elif (aka else-if) Statement 2948.4 Conditional Expressions (aka "the Ternary Operator") 2958.5 while Statement 2968.6 for Statement 2988.7 break Statement 3048.8 continue Statement 3058.9 pass Statement 3068.10 else Statement . . . Take Two 3078.11 Iterators and the iter() Function 3098.12 List Comprehensions 3138.13 Generator Expressions 3158.14 Related Modules 3208.15 Exercises 320Chapter 9 Files and Input/Output 3249.1 File Objects 3259.2 File Built-in Functions [open() and file()] 3269.3 File Built-in Methods 3299.4 File Built-in Attributes 3369.5 Standard Files 3379.6 Command-Line Arguments 3389.7 File System 3399.8 File Execution 3489.9 Persistent Storage Modules 3489.10 Related Modules 3519.11 Exercises 353Chapter 10 Errors and Exceptions 35810.1 What Are Exceptions? 36010.2 Exceptions in Python 36110.3 Detecting and Handling Exceptions 36410.4 Context Management 38210.5 *Exceptions as Strings 38610.6 Raising Exceptions 38610.7 Assertions 38910.8 Standard Exceptions 39110.9 *Creating Exceptions 39410.10 Why Exceptions (Now)? 40110.11 Why Exceptions at All? 40210.12 Exceptions and the sys Module 40310.13 Related Modules 40410.14 Exercises 405Chapter 11 Functions and Functional Programming 40811.1 What Are Functions? 40811.2 Calling Functions 40911.3 Creating Functions 41211.4 Passing Functions 41811.5 Formal Arguments 42811.6 Variable-Length Arguments 43311.7 Functional Programming 43911.8 Variable Scope 45311.9 Recursion 46611.10 Generators 46711.11 Exercises 471Chapter 12 Modules 47612.1 What Are Modules? 47712.2 Modules and Files 47812.3 Namespaces 48012.4 Importing Modules 48412.5 Features of Module Import 48612.6 Module Built-in Functions 49112.7 Packages 49312.8 Other Features of Modules 49612.9 Related Modules 50012.10 Exercises 501Chapter 13 Object-Oriented Programming 50413.1 Introduction 50613.2 Object-Oriented Programming 51413.3 Classes 51813.4 Class Attributes 52013.5 Instances 52613.6 Instance Attributes 53113.7 Binding and Method Invocation 54013.8 Static Methods and Class Methods 54213.9 Composition 54413.10 Subclassing and Derivation 54513.11 Inheritance 54713.12 Built-in Functions for Classes, Instances, and Other Objects 55813.13 Customizing Classes with Special Methods 56413.14 Privacy 58513.15 *Delegation 58713.16 Advanced Features of New-Style Classes (Python 2.2+) 59513.17 Related Modules and Documentation 61513.18 Exercises 618Chapter 14 Execution Environment 62614.1 Callable Objects 62814.2 Code Objects 63514.3 Executable Object Statements and Built-in Functions 63614.4 Executing Other (Python) Programs 64914.5 Executing Other (Non-Python) Programs 65314.6 Restricted Execution 66314.7 Terminating Execution 66314.8 Miscellaneous Operating System Interface 66614.9 Related Modules 66814.10 Exercises 668Part II: Advanced Topics 670Chapter 15 Regular Expressions 67215.1 Introduction/Motivation 67315.2 Special Symbols and Characters 67615.3 REs and Python 68315.4 Regular Expressions Example 69815.5 Exercises 705Chapter 16 Network Programming 71016.1 Introduction 71116.2 Sockets: Communication Endpoints 71516.3 Network Programming in Python 71816.4 *SocketServer Module 73216.5* Introduction to the Twisted Framework 73716.6 Related Modules 74116.7 Exercises 742Chapter 17 Internet Client Programming 74617.1 What Are Internet Clients? 74717.2 Transferring Files 74817.3 Network News 75617.4 Electronic Mail 76617.5 Related Modules 77817.6 Exercises 779Chapter 18 Multithreaded Programming 78618.1 Introduction/Motivation 78718.2 Threads and Processes 78918.3 Python, Threads, and the Global Interpreter Lock 79018.4 thread Module 79518.5 threading Module 80018.6 Related Modules 81418.7 Exercises 814Chapter 19 GUI Programming 81819.1 Introduction 81919.2 Tkinter and Python Programming 82119.3 Tkinter Examples 82619.4 Brief Tour of Other GUIs 84019.5 Related Modules and Other GUIs 84819.6 Exercises 851Chapter 20 Web Programming 85420.1 Introduction 85520.2 Web Surfing with Python: Creating Simple Web Clients 85920.3 Advanced Web Clients 86920.4 CGI: Helping Web Servers Process Client Data 87520.5 Building CGI Applications 87820.6 Using Unicode with CGI 89220.7 Advanced CGI 89420.8 Web (HTTP) Servers 90620.9 Related Modules 90920.10 Exercises 913Chapter 21 Database Programming 91821.1 Introduction 91921.2 Python Database Application Programmer's Interface (DB-API) 92421.3 Object-Relational Managers (ORMs) 94621.4 Related Modules 95821.5 Exercises 960Chapter 22 Extending Python 96222.1 Introduction/Motivation 96322.2 Extending Python by Writing Extensions 96522.3 Related Topics 98122.4 Exercises 982Chapter 23 Miscellaneous 98423.1 Web Services 98523.2 Programming Microsoft Office with Win32 COM 98923.3 Python and Java Programming with Jython 1002 23.4 Exercises 1006Appendix 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.

Look for similar items by category
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