Python是一種社區驅動的、開源的、擁有獨特的簡潔和可讀性的、多用途的、動態指令碼語言。
優點:
能夠使開發速度最佳化,同時還可以保證代碼的高度可讀性,使程式員能夠快速完成項目開發。
缺點:
執行速度不夠快(與C、C++相比)。
Python代碼常儲存在尾碼為.py的檔案中,不需要編譯連結的過程。其實現機製為:
原始碼→位元組碼→Python Virtual Machine
如果需要產生.exe檔案(凍結二進位檔案),往往可以藉助一些工具:Py2exe(WINDOWS) / PyInstaller (Linux / UNIX)。其機制是將python嵌入於二進位檔案從而實現Python的環境。
在互動解譯器中Python能自動列印運算式的結果,並且可以重新導向其輸出到一個檔案,如
python spam.py > saveit.txt
長期編寫C/C++代碼的我對該功能非常欽佩!
[翻譯]
Python是一種易學的、強大的語言。它擁有高效的資料結構與簡單而高效的物件導向編程思想。Python優雅的文法、動態資料類型以及它直譯式的天性使得它不僅成為了一種理想的指令碼語言,也使得它能夠在幾乎所有的平台上進行快速的開發。
Python的解譯器和它的標準庫是完全開源的,我們可以通過http://www.python.org/來擷取和發布。該網站同時也能夠發布第三方Python模組、程式、工具以及文檔。
Python的解譯器能夠輕易地與其它語言的開發進行結合,Python同時也可以作為其他語言的一種擴充工具來使用。
附:
http://docs.python.org/tutorial
The Python Tutorial
Release: |
2.7 |
Date: |
July 14, 2011 |
Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. 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.
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, http://www.python.org/, and may be freely distributed. The same site also contains distributions of and pointers to many free third party Python modules, programs and tools, and additional documentation.
The Python interpreter is easily extended with new functions and data types implemented in C or C++ (or other languages callable from C). Python is also suitable as an extension language for customizable applications.
This tutorial introduces the reader informally to the basic concepts and features of the Python language and system. 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.
For a description of standard objects and modules, see The Python Standard Library. The Python Language Reference gives a more formal definition of the language. To write extensions in C or C++, read Extending and Embedding the Python Interpreter and Python/C API Reference Manual. There are also several books covering Python in depth.
This tutorial does not attempt to be comprehensive and cover every single feature, or even every commonly used feature. Instead, it introduces many of Python’s most noteworthy features, and will give you a good idea of the language’s flavor and style. 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.
The Glossary is also worth going through.
- 1. Whetting Your Appetite
- 2. 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. Error Handling
- 2.2.2. Executable Python Scripts
- 2.2.3. Source Code Encoding
- 2.2.4. The Interactive Startup File
- 3. An Informal Introduction to Python
- 3.1. Using Python as a Calculator
- 3.1.1. Numbers
- 3.1.2. Strings
- 3.1.3. Unicode Strings
- 3.1.4. Lists
- 3.2. First Steps Towards Programming
- 4. 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 Forms
- 4.7.6. Documentation Strings
- 4.8. Intermezzo: Coding Style
- 5. Data Structures
- 5.1. More on Lists
- 5.1.1. Using Lists as Stacks
- 5.1.2. Using Lists as Queues
- 5.1.3. Functional Programming Tools
- 5.1.4. List Comprehensions
- 5.1.5. 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
- 6. 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
- 7. Input and Output
- 7.1. Fancier Output Formatting
- 7.1.1. Old string formatting
- 7.2. Reading and Writing Files
- 7.2.1. Methods of File Objects
- 7.2.2. The pickle Module
- 8. 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
- 9. Classes
- 9.1. A Word About Names and Objects
- 9.2. Python Scopes and Namespaces
- 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.4. Random Remarks
- 9.5. Inheritance
- 9.5.1. Multiple Inheritance
- 9.6. Private Variables
- 9.7. Odds and Ends
- 9.8. Exceptions Are Classes Too
- 9.9. Iterators
- 9.10. Generators
- 9.11. Generator Expressions
- 10. 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
- 11. Brief Tour of the Standard Library – Part 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
- 12. What Now?
- 13. Interactive Input Editing and History Substitution
- 13.1. Line Editing
- 13.2. History Substitution
- 13.3. Key Bindings
- 13.4. Alternatives to the Interactive Interpreter
- 14. Floating Point Arithmetic: Issues and Limitations
- 14.1. Representation Error