<!DOCTYPE html PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
<link rel=
"STYLESHEET" href=
"tut.css" type='text/css'
/>
<link rel=
"SHORTCUT ICON" href=
"../icons/pyfav.png" type=
"image/png" />
<link rel='start' href='../index.html' title='Python Documentation Index'
/>
<link rel=
"first" href=
"tut.html" title='Python Tutorial'
/>
<link rel='contents' href='node2.html'
title=
"Contents" />
<link rel='index' href='node19.html' title='Index'
/>
<link rel='last' href='about.html' title='About this document...'
/>
<link rel='help' href='about.html' title='About this document...'
/>
<link rel=
"next" href=
"node1.html" />
<meta name='aesop' content='information'
/>
<title>Python Tutorial
</title>
<div id='top-navigation-panel' xml:id='top-navigation-panel'
>
<table align=
"center" width=
"100%" cellpadding=
"0" cellspacing=
"2">
<td class='online-navigation'
><img src='../icons/previous.png'
border='
0' height='
32' alt='Previous Page' width='
32'
/></td>
<td class='online-navigation'
><a rel=
"parent" title=
"Python Documentation Index"
href=
"../index.html"><img src='../icons/up.png'
border='
0' height='
32' alt='Up One Level' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"next" title=
"Front Matter"
href=
"node1.html"><img src='../icons/next.png'
border='
0' height='
32' alt='Next Page' width='
32'
/></A></td>
<td align=
"center" width=
"100%">Python Tutorial
</td>
<td class='online-navigation'
><a rel=
"contents" title=
"Table of Contents"
href=
"node2.html"><img src='../icons/contents.png'
border='
0' height='
32' alt='Contents' width='
32'
/></A></td>
<td class='online-navigation'
><img src='../icons/blank.png'
border='
0' height='
32' alt='' width='
32'
/></td>
<td class='online-navigation'
><a rel=
"index" title=
"Index"
href=
"node19.html"><img src='../icons/index.png'
border='
0' height='
32' alt='Index' width='
32'
/></A></td>
<div class='online-navigation'
>
<b class=
"navlabel">Up:
</b>
<a class=
"sectref" rel=
"parent" href=
"../index.html">Python Documentation Index
</A>
<b class=
"navlabel">Next:
</b>
<a class=
"sectref" rel=
"next" href=
"node1.html">Front Matter
</A>
<!--End of Navigation Panel-->
<link rel='up' href='../index.html' title='Python Documentation Index'
/>
<p><b><font size=
"+2">Guido van Rossum
</font></b></p>
<strong>Python Software Foundation
</strong>
Email:
<span class=
"email">docs@python.org
</span>
<p><i> Fred L. Drake, Jr., editor
</i></p>
<p><strong>Release
2.4.2</strong><br />
<strong>28 September
2005</strong></p>
<p><br /></p><hr class='online-navigation'
/>
<div class='online-navigation'
>
<!--Table of Child-Links-->
<A NAME=
"CHILD_LINKS"></a>
<LI><A href=
"node1.html">Front Matter
</a>
<LI><A href=
"node2.html">Contents
</a>
<LI><A href=
"node3.html">1. Whetting Your Appetite
</a>
<LI><A href=
"node4.html">2. Using the Python Interpreter
</a>
<LI><A href=
"node4.html#SECTION004100000000000000000">2.1 Invoking the Interpreter
</a>
<LI><A href=
"node4.html#SECTION004110000000000000000">2.1.1 Argument Passing
</a>
<LI><A href=
"node4.html#SECTION004120000000000000000">2.1.2 Interactive Mode
</a>
<LI><A href=
"node4.html#SECTION004200000000000000000">2.2 The Interpreter and Its Environment
</a>
<LI><A href=
"node4.html#SECTION004210000000000000000">2.2.1 Error Handling
</a>
<LI><A href=
"node4.html#SECTION004220000000000000000">2.2.2 Executable Python Scripts
</a>
<LI><A href=
"node4.html#SECTION004230000000000000000">2.2.3 Source Code Encoding
</a>
<LI><A href=
"node4.html#SECTION004240000000000000000">2.2.4 The Interactive Startup File
</a>
<LI><A href=
"node5.html">3. An Informal Introduction to Python
</a>
<LI><A href=
"node5.html#SECTION005100000000000000000">3.1 Using Python as a Calculator
</a>
<LI><A href=
"node5.html#SECTION005110000000000000000">3.1.1 Numbers
</a>
<LI><A href=
"node5.html#SECTION005120000000000000000">3.1.2 Strings
</a>
<LI><A href=
"node5.html#SECTION005130000000000000000">3.1.3 Unicode Strings
</a>
<LI><A href=
"node5.html#SECTION005140000000000000000">3.1.4 Lists
</a>
<LI><A href=
"node5.html#SECTION005200000000000000000">3.2 First Steps Towards Programming
</a>
<LI><A href=
"node6.html">4. More Control Flow Tools
</a>
<LI><A href=
"node6.html#SECTION006100000000000000000">4.1 <tt class=
"keyword">if
</tt> Statements
</a>
<LI><A href=
"node6.html#SECTION006200000000000000000">4.2 <tt class=
"keyword">for
</tt> Statements
</a>
<LI><A href=
"node6.html#SECTION006300000000000000000">4.3 The
<tt class=
"function">range()
</tt> Function
</a>
<LI><A href=
"node6.html#SECTION006400000000000000000">4.4 <tt class=
"keyword">break
</tt> and
<tt class=
"keyword">continue
</tt> Statements, and
<tt class=
"keyword">else
</tt> Clauses on Loops
</a>
<LI><A href=
"node6.html#SECTION006500000000000000000">4.5 <tt class=
"keyword">pass
</tt> Statements
</a>
<LI><A href=
"node6.html#SECTION006600000000000000000">4.6 Defining Functions
</a>
<LI><A href=
"node6.html#SECTION006700000000000000000">4.7 More on Defining Functions
</a>
<LI><A href=
"node6.html#SECTION006710000000000000000">4.7.1 Default Argument Values
</a>
<LI><A href=
"node6.html#SECTION006720000000000000000">4.7.2 Keyword Arguments
</a>
<LI><A href=
"node6.html#SECTION006730000000000000000">4.7.3 Arbitrary Argument Lists
</a>
<LI><A href=
"node6.html#SECTION006740000000000000000">4.7.4 Unpacking Argument Lists
</a>
<LI><A href=
"node6.html#SECTION006750000000000000000">4.7.5 Lambda Forms
</a>
<LI><A href=
"node6.html#SECTION006760000000000000000">4.7.6 Documentation Strings
</a>
<LI><A href=
"node7.html">5. Data Structures
</a>
<LI><A href=
"node7.html#SECTION007100000000000000000">5.1 More on Lists
</a>
<LI><A href=
"node7.html#SECTION007110000000000000000">5.1.1 Using Lists as Stacks
</a>
<LI><A href=
"node7.html#SECTION007120000000000000000">5.1.2 Using Lists as Queues
</a>
<LI><A href=
"node7.html#SECTION007130000000000000000">5.1.3 Functional Programming Tools
</a>
<LI><A href=
"node7.html#SECTION007140000000000000000">5.1.4 List Comprehensions
</a>
<LI><A href=
"node7.html#SECTION007200000000000000000">5.2 The
<tt class=
"keyword">del
</tt> statement
</a>
<LI><A href=
"node7.html#SECTION007300000000000000000">5.3 Tuples and Sequences
</a>
<LI><A href=
"node7.html#SECTION007400000000000000000">5.4 Sets
</a>
<LI><A href=
"node7.html#SECTION007500000000000000000">5.5 Dictionaries
</a>
<LI><A href=
"node7.html#SECTION007600000000000000000">5.6 Looping Techniques
</a>
<LI><A href=
"node7.html#SECTION007700000000000000000">5.7 More on Conditions
</a>
<LI><A href=
"node7.html#SECTION007800000000000000000">5.8 Comparing Sequences and Other Types
</a>
<LI><A href=
"node8.html">6. Modules
</a>
<LI><A href=
"node8.html#SECTION008100000000000000000">6.1 More on Modules
</a>
<LI><A href=
"node8.html#SECTION008110000000000000000">6.1.1 The Module Search Path
</a>
<LI><A href=
"node8.html#SECTION008120000000000000000">6.1.2 ``Compiled'' Python files
</a>
<LI><A href=
"node8.html#SECTION008200000000000000000">6.2 Standard Modules
</a>
<LI><A href=
"node8.html#SECTION008300000000000000000">6.3 The
<tt class=
"function">dir()
</tt> Function
</a>
<LI><A href=
"node8.html#SECTION008400000000000000000">6.4 Packages
</a>
<LI><A href=
"node8.html#SECTION008410000000000000000">6.4.1 Importing * From a Package
</a>
<LI><A href=
"node8.html#SECTION008420000000000000000">6.4.2 Intra-package References
</a>
<LI><A href=
"node8.html#SECTION008430000000000000000">6.4.3 Packages in Multiple Directories
</a>
<LI><A href=
"node9.html">7. Input and Output
</a>
<LI><A href=
"node9.html#SECTION009100000000000000000">7.1 Fancier Output Formatting
</a>
<LI><A href=
"node9.html#SECTION009200000000000000000">7.2 Reading and Writing Files
</a>
<LI><A href=
"node9.html#SECTION009210000000000000000">7.2.1 Methods of File Objects
</a>
<LI><A href=
"node9.html#SECTION009220000000000000000">7.2.2 The
<tt class=
"module">pickle
</tt> Module
</a>
<LI><A href=
"node10.html">8. Errors and Exceptions
</a>
<LI><A href=
"node10.html#SECTION0010100000000000000000">8.1 Syntax Errors
</a>
<LI><A href=
"node10.html#SECTION0010200000000000000000">8.2 Exceptions
</a>
<LI><A href=
"node10.html#SECTION0010300000000000000000">8.3 Handling Exceptions
</a>
<LI><A href=
"node10.html#SECTION0010400000000000000000">8.4 Raising Exceptions
</a>
<LI><A href=
"node10.html#SECTION0010500000000000000000">8.5 User-defined Exceptions
</a>
<LI><A href=
"node10.html#SECTION0010600000000000000000">8.6 Defining Clean-up Actions
</a>
<LI><A href=
"node11.html">9. Classes
</a>
<LI><A href=
"node11.html#SECTION0011100000000000000000">9.1 A Word About Terminology
</a>
<LI><A href=
"node11.html#SECTION0011200000000000000000">9.2 Python Scopes and Name Spaces
</a>
<LI><A href=
"node11.html#SECTION0011300000000000000000">9.3 A First Look at Classes
</a>
<LI><A href=
"node11.html#SECTION0011310000000000000000">9.3.1 Class Definition Syntax
</a>
<LI><A href=
"node11.html#SECTION0011320000000000000000">9.3.2 Class Objects
</a>
<LI><A href=
"node11.html#SECTION0011330000000000000000">9.3.3 Instance Objects
</a>
<LI><A href=
"node11.html#SECTION0011340000000000000000">9.3.4 Method Objects
</a>
<LI><A href=
"node11.html#SECTION0011400000000000000000">9.4 Random Remarks
</a>
<LI><A href=
"node11.html#SECTION0011500000000000000000">9.5 Inheritance
</a>
<LI><A href=
"node11.html#SECTION0011510000000000000000">9.5.1 Multiple Inheritance
</a>
<LI><A href=
"node11.html#SECTION0011600000000000000000">9.6 Private Variables
</a>
<LI><A href=
"node11.html#SECTION0011700000000000000000">9.7 Odds and Ends
</a>
<LI><A href=
"node11.html#SECTION0011800000000000000000">9.8 Exceptions Are Classes Too
</a>
<LI><A href=
"node11.html#SECTION0011900000000000000000">9.9 Iterators
</a>
<LI><A href=
"node11.html#SECTION00111000000000000000000">9.10 Generators
</a>
<LI><A href=
"node11.html#SECTION00111100000000000000000">9.11 Generator Expressions
</a>
<LI><A href=
"node12.html">10. Brief Tour of the Standard Library
</a>
<LI><A href=
"node12.html#SECTION0012100000000000000000">10.1 Operating System Interface
</a>
<LI><A href=
"node12.html#SECTION0012200000000000000000">10.2 File Wildcards
</a>
<LI><A href=
"node12.html#SECTION0012300000000000000000">10.3 Command Line Arguments
</a>
<LI><A href=
"node12.html#SECTION0012400000000000000000">10.4 Error Output Redirection and Program Termination
</a>
<LI><A href=
"node12.html#SECTION0012500000000000000000">10.5 String Pattern Matching
</a>
<LI><A href=
"node12.html#SECTION0012600000000000000000">10.6 Mathematics
</a>
<LI><A href=
"node12.html#SECTION0012700000000000000000">10.7 Internet Access
</a>
<LI><A href=
"node12.html#SECTION0012800000000000000000">10.8 Dates and Times
</a>
<LI><A href=
"node12.html#SECTION0012900000000000000000">10.9 Data Compression
</a>
<LI><A href=
"node12.html#SECTION00121000000000000000000">10.10 Performance Measurement
</a>
<LI><A href=
"node12.html#SECTION00121100000000000000000">10.11 Quality Control
</a>
<LI><A href=
"node12.html#SECTION00121200000000000000000">10.12 Batteries Included
</a>
<LI><A href=
"node13.html">11. Brief Tour of the Standard Library - Part II
</a>
<LI><A href=
"node13.html#SECTION0013100000000000000000">11.1 Output Formatting
</a>
<LI><A href=
"node13.html#SECTION0013200000000000000000">11.2 Templating
</a>
<LI><A href=
"node13.html#SECTION0013300000000000000000">11.3 Working with Binary Data Record Layouts
</a>
<LI><A href=
"node13.html#SECTION0013400000000000000000">11.4 Multi-threading
</a>
<LI><A href=
"node13.html#SECTION0013500000000000000000">11.5 Logging
</a>
<LI><A href=
"node13.html#SECTION0013600000000000000000">11.6 Weak References
</a>
<LI><A href=
"node13.html#SECTION0013700000000000000000">11.7 Tools for Working with Lists
</a>
<LI><A href=
"node13.html#SECTION0013800000000000000000">11.8 Decimal Floating Point Arithmetic
</a>
<LI><A href=
"node14.html">12. What Now?
</a>
<LI><A href=
"node15.html">A. Interactive Input Editing and History Substitution
</a>
<LI><A href=
"node15.html#SECTION0015100000000000000000">A
.1 Line Editing
</a>
<LI><A href=
"node15.html#SECTION0015200000000000000000">A
.2 History Substitution
</a>
<LI><A href=
"node15.html#SECTION0015300000000000000000">A
.3 Key Bindings
</a>
<LI><A href=
"node15.html#SECTION0015400000000000000000">A
.4 Commentary
</a>
<LI><A href=
"node16.html">B. Floating Point Arithmetic: Issues and Limitations
</a>
<LI><A href=
"node16.html#SECTION0016100000000000000000">B
.1 Representation Error
</a>
<LI><A href=
"node17.html">C. History and License
</a>
<LI><A href=
"node17.html#SECTION0017100000000000000000">C
.1 History of the software
</a>
<LI><A href=
"node17.html#SECTION0017200000000000000000">C
.2 Terms and conditions for accessing or otherwise using Python
</a>
<LI><A href=
"node17.html#SECTION0017300000000000000000">C
.3 Licenses and Acknowledgements for Incorporated Software
</a>
<LI><A href=
"node17.html#SECTION0017310000000000000000">C
.3.1 Mersenne Twister
</a>
<LI><A href=
"node17.html#SECTION0017320000000000000000">C
.3.2 Sockets
</a>
<LI><A href=
"node17.html#SECTION0017330000000000000000">C
.3.3 Floating point exception control
</a>
<LI><A href=
"node17.html#SECTION0017340000000000000000">C
.3.4 MD5 message digest algorithm
</a>
<LI><A href=
"node17.html#SECTION0017350000000000000000">C
.3.5 Asynchronous socket services
</a>
<LI><A href=
"node17.html#SECTION0017360000000000000000">C
.3.6 Cookie management
</a>
<LI><A href=
"node17.html#SECTION0017370000000000000000">C
.3.7 Profiling
</a>
<LI><A href=
"node17.html#SECTION0017380000000000000000">C
.3.8 Execution tracing
</a>
<LI><A href=
"node17.html#SECTION0017390000000000000000">C
.3.9 UUencode and UUdecode functions
</a>
<LI><A href=
"node17.html#SECTION00173100000000000000000">C
.3.10 XML Remote Procedure Calls
</a>
<LI><A href=
"node18.html">D. Glossary
</a>
<LI><A href=
"node19.html">Index
</a>
<LI><A href=
"node20.html">About this document ...
</a>
<!--End of Table of Child-Links-->
<div class='online-navigation'
>
<table align=
"center" width=
"100%" cellpadding=
"0" cellspacing=
"2">
<td class='online-navigation'
><img src='../icons/previous.png'
border='
0' height='
32' alt='Previous Page' width='
32'
/></td>
<td class='online-navigation'
><a rel=
"parent" title=
"Python Documentation Index"
href=
"../index.html"><img src='../icons/up.png'
border='
0' height='
32' alt='Up One Level' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"next" title=
"Front Matter"
href=
"node1.html"><img src='../icons/next.png'
border='
0' height='
32' alt='Next Page' width='
32'
/></A></td>
<td align=
"center" width=
"100%">Python Tutorial
</td>
<td class='online-navigation'
><a rel=
"contents" title=
"Table of Contents"
href=
"node2.html"><img src='../icons/contents.png'
border='
0' height='
32' alt='Contents' width='
32'
/></A></td>
<td class='online-navigation'
><img src='../icons/blank.png'
border='
0' height='
32' alt='' width='
32'
/></td>
<td class='online-navigation'
><a rel=
"index" title=
"Index"
href=
"node19.html"><img src='../icons/index.png'
border='
0' height='
32' alt='Index' width='
32'
/></A></td>
<div class='online-navigation'
>
<b class=
"navlabel">Up:
</b>
<a class=
"sectref" rel=
"parent" href=
"../index.html">Python Documentation Index
</A>
<b class=
"navlabel">Next:
</b>
<a class=
"sectref" rel=
"next" href=
"node1.html">Front Matter
</A>
<span class=
"release-info">Release
2.4.2, documentation updated on
28 September
2005.
</span>
<!--End of Navigation Panel-->
See
<i><a href=
"about.html">About this document...
</a></i> for information on suggesting changes.