【翻译】Python3手册之Python开胃菜

该系列的Python文章是对Python 3.5.2的官方文档中《The Python Tutorial》部分内容的翻译整理,由于本人英文水平有限并且是初学Python,所以后续文章的内容不会完全照着原英文文档翻译,针对部分内容会选择性跳过,但不会影响阅读。

Python是一门简单易学、功能强大的编程语言。它拥有高效的高级数据结构以及简单却高效的进行面向对象编程。在各种平台和应用领域方面,由于Python具有优雅的语法和动态类型以及它的可解释性强等优点,使得Python在脚本编写和快速开发应用程序方面成为了一种理想的语言。

你可以自由地从 Python官方站点: http://www.python.org,以源代码或二进制形式获取 Python 解释器及其标准扩展库,并可以自由的分发。此站点同时也提供了大量的第三方 Python 模块、程序和工具,及其附加文档。

使用C或C++语言实现的函数和数据类型可以很容易的为Python解释器进行扩展。Python还可以被用作定制应用程序的一门扩展语言。

该手册非正式的向读者介绍了Python语言的基本概念和特性,在动手实践中拥有Python解释器是很有帮助的,手册中所有的例子都是完整的,因此可以离线阅读。

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.

该指导手册不会试图综合的介绍所有的Python特性(即使是一些常用的特性)。取而代之的是,该手册会介绍Python语言的许多值得关注的(noteworthy)特性,并且会让你对Python语言的特色和风格有一个很好的认知。当你读完这本手册之后,你将具备阅读和编写Python模块的能力,并且你将可以去学习在文档The Python Standard Library中所描述的各种Python模块库。

1.Whetting Your Appetite(开胃菜)

如果你需要用电脑来处理很多工作,最终你会发现有一些工作你更希望用自动化处理的方式来解决。举个栗子,你可能希望在一个很大的文本文件中进行查找/替换,或者以复杂的方式对大量的图片进行重命名和整理。或许你想要写一个小型的数据库、一个GUI应用程序、一个简单的游戏等。

如果你是一个资深的软件开发者,你可能会用到几种C/C++/JAVA类库,但是发现通常编写/编译/测试/再编译的周期太长。也许你正在为这样一个类库编写测试用例,并发现这是一件极其烦躁的工作。又或许你已经完成了一个可以使用扩展语言的程序,并且不想用一个全新的语言去重新设计和实现一遍。

那么,Python正是这么一个适合你的语言。

虽然你可以写一个shell脚本或者Windows批处理程序来完成那些工作,但是shell脚本更适合用来处理诸如移动文件和修改文本数据的工作,却不适合于开发GUI程序或游戏等。虽然你能够使用 C/C++/JAVA 编写程序,但即使编写一个简单的 first-draft 程序也有可能耗费大量的开发时间。相比之下,Python 更易于使用,无论在 Windows、Mac OS X 或 Unix 操作系统上它都会帮助你更快地完成任务。

虽然 Python 易于使用,但它却是一门完整的编程语言;与 Shell 脚本或批处理文件相比,它为编写大型程序提供了更多的结构和支持。另一方面,Python 提供了比 C 更多的错误检查,并且作为一门 高级语言 ,它内置支持高级的数据结构类型,例如:灵活的数组和字典。因其更多的通用数据类型,Python 比 Awk 甚至 Perl 都适用于更多问题领域,至少大多数事情在 Python 中与其他语言同样简单。

Python 允许你将程序分割为不同的模块,以便在其他的 Python 程序中重用。Python 内置提供了大量的标准模块,你可以将其用作程序的基础,或者作为学习 Python 编程的示例。这些模块提供了诸如文件 I/O、系统调用、Socket 支持,甚至类似 Tk 的用户图形界面(GUI)工具包接口。

Python 是一门解释型语言,因为无需编译和链接,你可以在程序开发中节省宝贵的时间。Python 解释器可以交互的使用,这使得试验语言的特性、编写临时程序或在自底向上的程序开发中测试方法非常容易。你甚至还可以把它当做一个桌面计算器。
Python 让程序编写的紧凑和可读。用 Python 编写的程序通常比同样的 C、C++ 或 Java 程序更短小,这是因为以下几个原因:

  • the high-level data types allow you to express complex operations in a single statement;(高级的数据类型可以使你以一个简单的语句来表达一个复杂的操作;)
    • statement grouping is done by indentation instead of beginning and ending brackets;(语句使用缩进来代替开始/结束括号来组织;)
      • no variable or argument declarations are necessary.(变量和参数无须声明。)

      Python是可扩展的:如果你知道如何用C来编写程序,那么便可以轻易地为解释器添加内置函数或模块,或者为了对性能瓶颈做优化,或者将Python程序与只有二进制形式的库连接起来。一旦你真正掌握了它,你可以将Python解释器继承进某个C应用程序,并把它当做那个程序的扩展或命令行语言。

      By the way, the language is named after the BBC show “Monty Python’s Flying Circus” and has nothing to do with reptiles. Making references to Monty Python skits in documentation is not only allowed, it is encouraged!

      Now that you are all excited about Python, you’ll want to examine it in some more detail. Since the best way to learn a language is to use it, the tutorial invites you to play with the Python interpreter as you read.

      下一节中,我们将解释 Python 解释器的用法。这是很简单的一件事情,但它有助于试验后面的例子。

      本手册剩下的部分将通过示例介绍 Python 语言及系统的诸多特性,开始是简单的语法、数据类型和表达式,接着介绍函数与模块,最后涉及异常和自定义类这样的高级内容。

      参考:
      Python 3.5.2 documentation

发表评论

电子邮件地址不会被公开。 必填项已用*标注