Python Programming

This book describes Python, an open-source general-purpose interpreted programming language available for the most popular operating systems. The current versions are 3.x while versions 2.x are no longer supported, since 2020. This book describes primarily the versions 3.x, but does at times reference versions 2.x.

There are a few implementations for Python 3 (and older): the standard implementation written in C, and PyPy, a JIT-compiled version written in RPython - a subset of Python. For Python 2 only there are Jython written in Java and IronPython written in C# for the .NET environment.

Contents

edit

Intro

edit
Overview  
Getting Python  
Development Environments 
Interactive mode  
Self Help  

Basics

edit
Creating Python programs  
Variables and Strings  
Basic syntax  
Sequences   (Strings, Lists, Tuples, Dictionaries, Sets)
Data types  
Numbers  
Strings  
Lists  
Tuples  
Dictionaries  
Sets  
Basic Math   -- redundant to "Operators"
Operators  
Control Flow  
Decision Control  
Conditional Statements  
Loops  
Functions  
Scoping  
Input and Output  
Files  
Modules  
Classes  
Exceptions  
Errors  
Source Documentation and Comments  
Idioms  
Package management
Python 2 vs. Python 3

Advanced

edit
Decorators  
Context Managers  
Reflection  
Metaclasses  
Performance
PyPy
Cython
Command-line one-liners
Tips and Tricks  

Modules

edit

Standard library modules

edit
Standard Library  
Regular Expression  
External commands
XML Tools  
Email  
Threading  
Sockets  
GUI Programming  
Tkinter
CGI interface  
WSGI web programming  
Internet  
Networks  
Math

Third-party modules

edit
Databases -- to be merged with the following chapter
Database Programming  
numpy
Game Programming in Python  
Qt4  
Dbus  
pyFormex
matplotlib
Sorted Container Types
Excel
MS Word

Writing extension modules

edit
Extending with C  
Extending with C++  
Extending with Pyrex  
Extending with ctypes  
Extending with Perl  

Appendices

edit
Popularity
Links
Authors
Library Modules
Naming conventions

See also

edit