The Python Tutorial
1
Python is an easy to learn, powerful programming language.
Python是一种易于学习,功能强大的编程语言。
2
It has efficient high-level data structures
and a simple but effective approach
to object-oriented programming.
它具有高效的高级数据结构,和一种简单有效的面向对象编程的方法。
3
Python’s elegant
syntax and dynamic typing,
together with its interpreted
nature,
make it an ideal language for scripting
and rapid
application development in many areas on most platforms.
python优雅的语法和动态类型,连同它的解释性质。
让它成为一个编写脚本的理想语言。
能够在大多数平台上面,针对很多领域,快速开发应用程序。
4
The Python interpreter
and the extensive
standard library
are freely available in source or binary form for all major platforms
from the Python Web site, https://www.python.org/,
and may be freely distributed.
python解释器和广泛的标准库可以从https://www.python.org/网站免费获得。
它们都是以源码或者二进制的形式提供的,面向全部主流的平台,可以免费分发。
5
The same site also contains distributions of
and pointers to many free third party Python modules, programs and tools,
and additional documentation.
这个网站还包含发布版,并且指向很多第三方python模块、程序和工具、附加文档等。
5
The Python interpreter is easily extended with new functions and data types
implemented in C or C++ (or other languages callable from C).
python解释器可以用C或者C++或者可以从C调用的语言编写扩展,能够轻松扩展功能和数据类型。
6
Python is also suitable as an extension language for customizable applications.
python也很适合作为自定义应用程序的扩展语言。
7
This tutorial introduces the reader informally
to the basic concepts
and features of the Python language and system.
这个教程是向读者非正式地介绍一下python的基本概念和语言、系统的特征。
8
It helps to have a Python interpreter handy for hands-on experience,
but all examples are self-contained,
so the tutorial can be read off-line as well.
有一个python解释器,有助于实践经验。
但是所有的例子都是独立的。
所以教程也很适合离线阅读。
9
For a description of standard objects and modules,
see The Python Standard Library.
有关标准对象和模块的说明,请参阅python标准库。
10
The Python Language Reference
gives a more formal definition of the language.
《python语言参考》提供了更正式的语言定义
11
To write extensions in C or C++,
read Extending and Embedding the Python Interpreter
and Python/C API Reference Manual.
想要写C或者C++的扩展,阅读《扩展和嵌入python解释器》
和《Python/C API参考手册》
12
There are also several books covering Python in depth.
还有几本关于python深入的书。
13
This tutorial does not attempt to be comprehensive
and cover every single feature,
or even every commonly used feature.
这个教程不打算是做的非常全面,
覆盖到每一个功能,
或者是覆盖到每一个常用功能。
comprehensive 全面
14
Instead, it introduces many of Python’s most noteworthy
features,
and will give you a good idea of the language’s flavor
and style.
相反地,它是介绍了很多python值得一提的功能,
并且会让你对这个语言的味道和风格,有所了解。
noteworthy 值得一提的
flavor 味道
15
After reading it, you will be able to read and write Python modules and programs,
and you will be ready to learn more about the various Python library modules
described in The Python Standard Library
.
阅读之后,您将能够阅读和编写Python模块和程序,
您将准备好了解有关各种在“Python标准库”中描述Python库模块的更多信息。
16
The Glossary is also worth going through.
词汇表,也是值得一试的。
17
-
Whetting
YourAppetite
吊一下你的胃口
Whet 磨
Appetite 食欲
18
Using the Python Interpreter
2.1. Invoking the Interpreter
2.1.1. Argument Passing
2.1.2. Interactive Mode
2.2. The Interpreter and Its Environment
2.2.1. Source Code Encoding使用python解释器
2.1. 调用解释器
2.1.1. 变量传递
2.1.2. 交互模式
2.2 解释器和它的环境
2.2.1. 源码编码
19
An Informal Introduction to Python
3.1. Using Python as a Calculator
3.1.1. Numbers
3.1.2. Strings
3.1.3. Lists
3.2. First Steps Towards Programmingpython的非正式介绍
3.1. 使用python作为计算器
3.1.1. 数值
3.1.2. 字符串
3.1.3. Lists
3.2 迈向编程的第一步
20
- More Control Flow Tools 更多控制流工具
4.1. if Statements
4.2. for Statements
4.3. The range() Function
4.4. break and continue Statements, and else Clauses on Loops
4.5. pass Statements
4.6. Defining Functions
4.7. More on Defining Functions
4.7.1. Default Argument Values
4.7.2. Keyword Arguments
4.7.3. Arbitrary Argument Lists
4.7.4. Unpacking Argument Lists
4.7.5. Lambda Expressions
4.7.6. Documentation Strings
4.7.7. Function Annotations
4.8. Intermezzo: Coding Style
21
- Data Structures 数据结构
5.1. More on Lists
5.1.1. Using Lists as Stacks
5.1.2. Using Lists as Queues
5.1.3. List Comprehensions
5.1.4. Nested List Comprehensions
5.2. The del statement
5.3. Tuples and Sequences
5.4. Sets
5.5. Dictionaries
5.6. Looping Techniques
5.7. More on Conditions
5.8. Comparing Sequences and Other Types
22
- Modules 模块
6.1. More on Modules
6.1.1. Executing modules as scripts
6.1.2. The Module Search Path
6.1.3. “Compiled” Python files
6.2. Standard Modules
6.3. The dir() Function
6.4. Packages
6.4.1. Importing * From a Package
6.4.2. Intra-package References
6.4.3. Packages in Multiple Directories
23
- Input and Output 输入输出
7.1. Fancier Output Formatting
7.1.1. Formatted String Literals
7.1.2. The String format() Method
7.1.3. Manual String Formatting
7.1.4. Old string formatting
7.2. Reading and Writing Files
7.2.1. Methods of File Objects
7.2.2. Saving structured data with json
24
- Errors and Exceptions 错误和异常
8.1. Syntax Errors
8.2. Exceptions
8.3. Handling Exceptions
8.4. Raising Exceptions
8.5. User-defined Exceptions
8.6. Defining Clean-up Actions
8.7. Predefined Clean-up Actions
25 类
- Classes
9.1. A Word About Names and Objects
9.2. Python Scopes and Namespaces
9.2.1. Scopes and Namespaces Example
9.3. A First Look at Classes
9.3.1. Class Definition Syntax
9.3.2. Class Objects
9.3.3. Instance Objects
9.3.4. Method Objects
9.3.5. Class and Instance Variables
9.4. Random Remarks
9.5. Inheritance
9.5.1. Multiple Inheritance
9.6. Private Variables
9.7. Odds and Ends
9.8. Iterators
9.9. Generators
9.10. Generator Expressions
26
- Brief Tour of the Standard Library 标准库简介
10.1. Operating System Interface
10.2. File Wildcards
10.3. Command Line Arguments
10.4. Error Output Redirection and Program Termination
10.5. String Pattern Matching
10.6. Mathematics
10.7. Internet Access
10.8. Dates and Times
10.9. Data Compression
10.10. Performance Measurement
10.11. Quality Control
10.12. Batteries Included
27
- Brief Tour of the Standard Library — Part II 标准库简介II
11.1. Output Formatting
11.2. Templating
11.3. Working with Binary Data Record Layouts
11.4. Multi-threading
11.5. Logging
11.6. Weak References
11.7. Tools for Working with Lists
11.8. Decimal Floating Point Arithmetic
28
- Virtual Environments and Packages 虚拟环境和包
12.1. Introduction
12.2. Creating Virtual Environments
12.3. Managing Packages with pip
29
- What Now? 现在怎么办?
30
- Interactive Input Editing and History Substitution 交互式输入编辑和历史替换
14.1. Tab Completion and History Editing
14.2. Alternatives to the Interactive Interpreter
31
- Floating Point Arithmetic: Issues and Limitations 浮点算术:问题和局限
15.1. Representation Error
32
- Appendix 附录
16.1. Interactive Mode
16.1.1. Error Handling
16.1.2. Executable Python Scripts
16.1.3. The Interactive Startup File
16.1.4. The Customization Modules