(An Unofficial) Python Tutorial Wiki

putting the community back in "maintained by the community"

Tutorial Structure

This page is not part of the tutorial. Inline comments are okay!

Current Structure

Introduction

Contents

  1. Whetting Your Appetite

    Purpose: Describe possible uses targeting reader's current needs. Currently targets power computer users and sys-admins (automation of tasks), and professional developers (gaps in regular development). Does not include: The fact the Python can actually be used for a lot of 'core' development replacing developers current language. Leave that to self discovery, that is not a current need.

  2. Using the Python Interpreter

    Purpose: Get the reader familiar with the Python interpreter and prepare her for trying out examples.

    Suggestion: There is too much information here, the reader can easily discover advanced command line options later. Currently all she needs is a way to run examples (interactive as well as script). - Shalabh

  3. An Informal Introduction to Python

    Purpose: Introduces numbers, strings, slicing/indexing, unicode strings, lists, a simple while loop, multiple assignments.

  4. More Control Flow Tools

    Purpose: Introduces if, for, range, break, continue, pass and functions. For functions, describes function is an object, default values, keyword arguments, *name and **name def syntax (there is some confusion here), lambda forms, docstrings, decorators.

    Suggestion: Remove decorators.

  5. Data Structures

    Purpose: Covers more on lists - using as stacks, using as queues; del statement; tuples and sequences; operations on sequences - functional tools (map, filter, reduce), max, min, sum, list comprehensions; dictionaries; sets; looping techniques; more on conditions - chained conditions, short circuit operations; Comparing sequences and other types;

    Suggestion: What are chained conditions and short circuit doing here? -Shalabh

    Suggestion: seems like looping techniques should be in "More Control Flow Tools", or in a later chapter.

  6. Modules

    Purpose: Introduce 'save to file and reuse' concept....

    Suggestion: Should the 'save to file' feature and walk-through be earlier in the tutorial? An honest reader is to go through all the data structures without the ability to edit and re-run?

    Suggested solution #1: Explain how to run Python files from the command line early on and have readers use that Suggested solution #2: Endorse the use of IDLE, which makes running code from a file in an interpreter very easy, especially edit-and-re-run (see Using the Python Interpreter)

  7. Modules

  8. Input and Output
  9. Errors and Exceptions
  10. Classes
  11. Brief Tour of the Standard Library
  12. Brief Tour of the Standard Library - Part II
  13. What Now? A. Interactive Input Editing and History Substitution B. Floating Point Arithmetic: Issues and Limitations C. History and License D. Glossary

New Chapter suggestions:

  1. Advanced Function Features - includes closures, generators, decorators