79 lines
3.2 KiB
Markdown
79 lines
3.2 KiB
Markdown
# Practical Python Programming
|
|
|
|
## [1. Introduction to Python](01_Introduction/00_Overview)
|
|
|
|
* [1.1 Introducing Python](01_Introduction/01_Python)
|
|
* [1.2 A First Program](01_Introduction/02_Hello_world)
|
|
* [1.3 Numbers](01_Introduction/03_Numbers)
|
|
* [1.4 Strings](01_Introduction/04_Strings)
|
|
* [1.5 Lists](01_Introduction/05_Lists)
|
|
* [1.6 Files](01_Introduction/06_Files)
|
|
* [1.7 Functions](01_Introduction/07_Functions)
|
|
|
|
## [2. Working with Data](02_Working_with_data/00_Overview)
|
|
|
|
* [2.1 Datatypes and Data Structures](02_Working_with_data/01_Datatypes)
|
|
* [2.2 Containers](02_Working_with_data/02_Containers)
|
|
* [2.3 Formatted Output](02_Working_with_data/03_Formatting)
|
|
* [2.4 Sequences](02_Working_with_data/04_Sequences)
|
|
* [2.5 Collections module](02_Working_with_data/05_Collections)
|
|
* [2.6 List comprehensions](02_Working_with_data/06_List_comprehension)
|
|
* [2.7 Object model](02_Working_with_data/07_Objects)
|
|
|
|
## [3. Program Organization)(03_Program_organization/00_Overview)
|
|
|
|
* [3.1 Functions and Script Writing](03_Program_organization/01_Script)
|
|
* [3.2 More Detail on Functions](03_Program_organization/02_More_functions)
|
|
* [3.3 Exception Handling](03_Program_organization/03_Error_checking)
|
|
* [3.4 Modules](03_Program_organization/04_Modules)
|
|
* [3.5 Main module](03_Program_organization/05_Main_module)
|
|
* [3.6 Design Discussion about Embracing Flexibilty](03_Program_organization/06_Design_discussion)
|
|
|
|
## [4. Classes and Objects)(04_Classes_objects/00_Overview)
|
|
|
|
* [4.1 Introducing Classes](04_Classes_objects/01_Class)
|
|
* [4.2 Inheritance](04_Classes_objects/02_Inheritance)
|
|
* [4.3 Special Methods](04_Classes_objects/03_Special_methods)
|
|
* [4.4 Defining new Exception](04_Classes_objects/04_Defining_exceptions)
|
|
|
|
## [5. The Inner Workings of Python Objects)(05_Object_model/00_Overview)
|
|
|
|
* [5.1 Dictionaries Revisited (Object Implementation)](05_Object_model/01_Dicts_revisited)
|
|
* [5.2 Encapsulation Techniques](05_Object_model/02_Classes_encapsulation)
|
|
|
|
## [6. Generators](06_Generators/00_Overview)
|
|
|
|
* [6.1 Iteration Protocol](06_Generators/01_Iteration_protocol)
|
|
* [6.2 Customizing Iteration with Generators](06_Generators/02_Customizing_iteration)
|
|
* [6.3 Producer/Consumer Problems and Workflows](06_Generators/03_Producers_consumers)
|
|
* [6.4 Generator Expressions](06_Generators/04_More_generators)
|
|
|
|
## [7. A Few Advanced Topics](07_Advanced_Topics/00_Overview)
|
|
|
|
* [7.1 Variable argument functions](07_Advanced_Topics/01_Variable_arguments)
|
|
* [7.2 Anonymous functions and lambda](07_Advanced_Topics/02_Anonymous_function)
|
|
* [7.3 Returning function and closures](07_Advanced_Topics/03_Retuning_functions)
|
|
* [7.4 Function decorators](07_Advanced_Topics/04_Function_decorators)
|
|
* [7.5 Static and class methods](07_Advanced_Topics/05_Decorated_methods)
|
|
|
|
## [8. Testing, Logging, and Debugging](08_Testing_debugging/00_Overview)
|
|
|
|
* [8.1 Testing](08_Testing_debugging/01_Testing)
|
|
* [8.2 Logging, error handling and diagnostics](08_Testing_debugging/02_Logging)
|
|
* [8.3 Debugging](08_Testing_debugging/03_Debugging)
|
|
|
|
## [9. Packages](09_Packages/00_Overview)
|
|
|
|
* [9.1 Packages](09_Packages/01_Packages)
|
|
* [9.2 Third Party Modules](09_Packages/02_Third_party)
|
|
* [9.3 Giving your code to others](09_Packages/03_Distribution)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|