Module 1:
Overview of Python
- What is Python?
- Interpreted Language
- Downloading and Installing
- Which version of Python
- Where to find documentation
Module 2:
Python Environment
- Structure of Python script
- Using the interpreter interactively
- Running standalone scripts under Linux and Windows
Module 3:
Python Basics
- Data types
- Sequences
- Mapping types
- Program structure
- Files and console I/O
- Conditionals
- Loops
- Built-ins
Module 4:
Operating System Access
- The OS module
- Environment variables
- Launching external commands
- Walking directory trees
- Paths, directories, and filenames
- Working with file systems
- Dates and times
- Accessing Windows DLL’s
Module 5:
Pythonic Programming
- The Zen of Python
- Common idioms
- Lambda functions
- List comprehensions
- Generator expressions
- String formatting
Module 6:
Modules and packages
- Initialization code
- Namespaces
- Executing modules as scripts
- Documentation
- Packages and name resolution
- Naming conventions
- Using imports
Module 7:
Classes
- Defining classes
- Instance methods and data
- Properties
- Initializers
- Class and static methods/data
- Inheritance
Module 8:
Metaprogramming
- Implicit properties
- globals() and locals()
- Working with attributes
- The inspect module
- Decorators
- Monkey patching
Module 9:
Programmer tools
- Analyzing programs
- Using pylint
- Testing code
- Using unittest
- Debugging
- Profiling and benchmarking
Module 10:
Database access
- The DB API
- Available Interfaces
- Connecting to a server
- Creating and executing a cursor
- Fetching data
- Parameterized statements
- Metadata
- Transaction control
- Other DBMS modules
Module 11:
Network Programming
- Sockets
- Clients
- Servers
- Application protocols
- Forking servers
- Binary data
Module 12:
Multiprogramming
- When to use threads?
- The Global Interpreter Lock
- The threading module
- Simple threading
- Sharing variables
- The queue module
- Debugging threaded programs
- Multiprocessing
- Other alternatives
Module 13:
XML and JSON
- Working with XML
- DOM and Sax
- Introducing Element Tree and xml
- Parsing XML
- Navigating the document
- Creating a new XML document
- JSON
- Parsing JSON into Python
- Converting Python into JSON
Module 14:
Extending Python
- About non-Python modules
- Overview of a C extension
- Writing C by hand
- Using SWIG
- Loading modules with C types


