Table of Contents
I. CORE PYTHON.
1. WELCOME TO PYTHON!
What Is Python? History of Python. Features of Python. Obtaining Python. Obtaining Python. Installing Python. Running Python. Python Documentation. Comparing Python. JPython and Some Nomenclature. Exercises.
2. GETTING STARTED.
Program Output, the print Statement, and "Hello World!" Program Input and the raw_input() Built-in Function. Comments. Operators. Variables and Assignment. Numbers. Strings. Lists and Tuples. Dictionaries. Code Blocks Use Indentation. if Statement. while Loop. for Loop and the range() Built-in Function. Files and the open() Built-in Function. Errors and Exceptions. Functions. Classes. Modules. Exercises.
3. SYNTAX AND STYLE.
Statements and Syntax. Variable Assignment. Identifiers. Basic Style Guidelines. Memory Management. First Python Application. Exercises.
4. PYTHON OBJECTS.
Python Objects. Standard Types. Other Built-in Types. Internal Types. Standard Type Operators. Standard Type Built-in Functions. Categorizing the Standard Types. Unsupported Types. Exercises.
Introduction to Numbers. Integers. Floating Point Real Numbers. Complex Numbers. Operators. Built-in Functions. Related Modules. Exercises.
6. SEQUENCES: STRINGS, LISTS, AND TUPLES.
Sequences. Strings. Strings and Operators. String-only Operators. Built-in Functions. String Built-in Methods. Special Features of Strings. Related Modules. Summary of String Highlights. Lists. Operators. Built-in Functions. List Type Built-in Methods. Special Features of Lists. Tuples. Tuple Operators and Built-in Functions. Special Features of Tuples. Related Modules. *Shallow and Deep Copies. Exercises.
Introduction to Dictionaries. Operators. Built-in Functions. Built-in Methods. Dictionary Keys. Exercises.
8. CONDITIONALS AND LOOPS.
if statement. else Statement. elif (a.k.a else-if) Statement. while Statement. for Statement. break Statement. continue Statement. pass Statement. else Statement Take Two. Exercises.
9. FILES AND INPUT/OUTPUT.
File Objects. File Built-in Function [open()]. File Built-in Methods. File Built-in Attributes. Standard Files. Command-line Arguments. File System. File Execution. Persistent Storage Modules. Related Modules. Exercises.
10. ERRORS AND EXCEPTIONS.
What Are Exceptions? Exceptions in Python. Detecting and Handling Exceptions. *Exceptions as Strings. *Exceptions as Classes. Raising Exceptions. Assertions. Standard Exceptions. *Creating Exceptions. Why Exceptions (Now)? Why Exceptions at All? Exceptions and the sys Module. Related Modules. Exercises.
What are Functions? Calling Functions. Creating Functions. Passing Functions. Formal Arguments. Variable-length Arguments. Functional Programming. Variable Scope. *Recursion. Exercises.
What are Modules? Modules and Files. Namespaces. Importing Modules. Importing Module Attributes. Module Built-in Functions. Packages. Other Features of Modules. Exercises.
13. CLASSES AND OOP.
Introduction. Object-oriented Programming. Classes. Class Attributes. Instances. Instance Attributes. Binding and Method Invocation. Composition. Subclassing and Derivation. Inheritance. Built-in Functions for Classes, Instances, and Other Objects. Type vs Classes/Instances. Customizing Classes with Special Methods. Privacy. Delegation. Related Modules and Documentation. Exercises.
14. EXECUTION ENVIRONMENT.
Callable Objects. Code Objects. Executable Object Statements and Built-in Functions. Executing Other (Python) Programs. Executing Other (Non-Python) Programs. Restricted Execution. Terminating Execution. Related Modules. Exercises.
II. ADVANCED TOPICS.
15. REGULAR EXPRESSIONS.
Introduction/Motivation. Special Symbols and Characters for REs. REs and Python. Regular Expression Adventures. Exercises.
16. NETWORK PROGRAMMING.
Introduction. Sockets: Communication Endpoints. Network Programming in Python. Related Modules. Exercises.
17. MULTITHREADED PROGRAMMING.
Introduction/Motivation. Threads and Processes. Threads and Python. thread Module. threading Module. Exercises.
18. GUI PROGRAMMING WITH TKINTER.
Introduction. Tkinter and Python Programming. Tkinter Examples. Related Modules and Other GUIs. Exercises.
19. WEB PROGRAMMING.
Introduction. Web Surfing with Python: Creating Simple Web Clients. Advanced Web Clients. CGI: Helping Web Servers Process Client Data. Building CGI Application. Advanced CGI. Web (HTTP) Servers. Related Modules. Exercises.
20. EXTENDING PYTHON.
Introduction/Motivation. Extending Python by Writing Extensions. Related Topics. Exercises. Answers to Selected Exercises. Other Reading and References. Other Printed References. Online References. Python Operator Summary. What's New in Python 2.0?
About the Author.
- New to Python? This is the developer's guide to Python development!
- Learn the core features of Python as well as advanced topics such as regular expressions, multithreaded programming, Web/Internet and network development, GUI development with Tk(inter) and more
- Also includes features found in the new Python 1.6 and 2.0 releases
- CD-ROM: Complete Python distributions (source code, documentation, and various binaries) plus all example scripts in the book
Python is an Internet and systems programming language that is soaring in popularity in today's fast-paced software development environment, and no wonder: it's simple (yet robust), object-oriented (yet can be used as a procedural language), extensible, scalable and features an easy to learn syntax that is clear and concise. Python combines the power of a compiled object language like Java and C++ with the ease of use and rapid development time of a scripting language. In fact, it's syntax is so easy to understand that you are more likely to pick it up faster than any of the other popular scripting languages in use today!
In Core Python Programming, 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, Core Python Programming delivers hundreds of industrial-strength code snippets and examples, all targeted at professional developers who want to leverage their existing skills! In particular, Core Python Programming presents numerous interactive examples that can be entered into the Python interpreter right in front of you! Finally, we present a chapter that shows you step-by-step how to extend Python using C or C++.
- Python syntax and style
- Development and Run-time Environments
- Objects and Python memory management
- Standard data types, methods, and operators
- Loops and conditionals
- Files and Input/Output
- Exceptions and error handling
- Functions, scope, arguments, and functional programming
- Importing modules and module attributes
- Object-oriented Programming with classes, methods, and instances
- Callable Objects
- Extending Python
Coverage of the Python standard module library and client-server application development includes comprehensive introductions to the following topics in Python programming:
- Regular expressions
- TCP/IP and UDP/IP Network programming using sockets
- Operating system interface
- GUI development with Tk using Tkinter
- Multithreaded programming
- Interactive Web/CGI/Internet applications
- Executing code in a restricted environment
- Inheritance, type emulation, operator overloading, and delegation in an OOP environment
Finally, we provide an introduction to the new features introduced in Python 1.6. These include Unicode string support, the new function invocation syntax which lets the caller provide a tuple of positional arguments and/or a dictionary of keyword arguments, and the new string methods. We also provide a glimpse into features that will only be found in the newer 2.0 release.
Every Core Series book:
- DEMONSTRATES how to write commercial-quality code
- FEATURES dozens of programs and examples!
- FOCUSES on the features and functions most important to real developers
- PROVIDES objective, unbiased coverage of cutting-edge technologies-no
Core Python Programming delivers:
- Coverage of the core parts of the Python language
- Real-world insights for developing Web/Internet, network, multithreaded and GUI applications
- Tables and charts detailing Python modules, built-in functions, operators, and attributes
- Code snippets to try live with Python's interactive interpreter, hammering the concepts home
- Extensive code examples-including several complete sample applications
CD-ROM includes complete Python source code and documentation distributions for Unix/Linux along with binaries for Windows and Macintosh platforms plus source code for all examples in the book.