Python指南
前言
Copyright © 2001, 2002, 2003 Python Software Foundation. All rights reserved.
Copyright © 2000 BeOpen. All rights reserved.
Copyright © 1995-2000 Corporation for National Research Initiatives. All rights reserved.
Copyright © 1991-1995 Stichting Mathematisch Centrum. All rights reserved.
See the end of this document for complete license and permissions information.
概要
Python 是一种容易学习的强大语言。它包括了高效的高级数据结构,提供了一个简单但很有有效的方式以便进行面向对象编程。 Python 优雅的语法,动态数据类型,以及它的解释器,使其成为了大多数平台上应用于各领域理想的脚本语言以及开发环境。
Python 解释器及其扩展标准库的源码和编译版本可以从 Python 的 Web 站点 / 及其所有镜像站上免费获得,并且可以自由发布。该站点上也提供了 Python的一些第三方模块,程序,工具,以及附加的文档。python新手适合的软件
Python 的解释器很容易通过 C 或 C++ (或者其它可以由 C 来调用的语言)来实现功能和数据结构的扩展。因些, Python 也很适于作为定制应用的一种扩展语言。
这个手册介绍了一些 Python 语言及其系统的基本知识与根念。这有助于对 Python 有一个基本的认识,当然所有的例子都包括在里面了,所以这本手册很适合离线阅读。
需要有关标准对象和模块的详细介绍的话,请查询 Python 程序库参考手册文档。 Python 参考手册 提供了更多的关于语言方面的正式说明。需要编写 C 或 C++ 扩展,请阅读 Python 解释器的扩展和集成 以及 Python/C API 参考手册。这几本书涵盖了各个深度上的 Python 知识。
本手册不会涵盖 Python 的所有功能,也不会去解释所用到的所有相关的知识。相反,它介绍了许多 Python 中最引人注目的功能,这会对读者掌握这门语言的风格大有帮助。读过它
后,你应该可以阅读和编写 Python 模块和程序了,接下来你可以从 Python 库参考手册中进一步学习 Python 复杂多变的库和模块了。
1. 开胃菜
如果你写过大规模的 Shell 脚本,应该会有过这样的体会:你还非常想再加一些别的功能进去,但它已经太大、太慢、太复杂了;或者这个功能需要调用一个系统函数,或者它只适合通过 C来调用……通常这些问题还不足以严肃到需要用 C 重写这个 Shell ;可能这个功能需要一些类似变长字符串或其它一些在 Shell 脚本中很容易到的数据类型(比如文件名的有序列表),但它们用 C 来实现就要做大量的工作,或者,你对 C 还不是很熟悉。
另一种情况:可能你需要使用几个 C 库来工作,通常 C 的编写 / 编译 / 测试 / 重编译周期太慢。你需要尽快的开发软件。也许你需要写一个使用扩展语言的程序,但不想设计一个语言,并为此编写调试一个解释器,然后再把它集成进你的程序。
遇到以上情况, Python 可能就是你要的语言。 Python 很容易上手,但它是一门真正的编程语言,提供了比 Shell 多的多的结构,支持大型程序。另一方面,它提供了比 C 更多
的错误检查,并且,作为一门高级语言,它拥有内置的高级数据类型,例如可变数组和字典,如果通过 C 来实现的话,这些工作可能让你大干上几天的时间。因为拥有更多的通用数据类型,Python 适合比 Awk 甚至 Perl 更广泛的问题领域,在其它的很多领域, Python 至少比别的语言要易用得多。
Python 可以让你把自己的程序分隔成不同的模块,这样就可以在其它的 Python 程序中重用。这样你就可以让自己的程序基于一个很大的标准模块集或者用它们作为示例来学习 Python 编程。 Python 中集成了一些类似文件 I/O ,系统调用, sockets ,甚至像 Tk 这样的用户图形接口。
Python 是一门解释型语言,因为不需要编译和链接的时间,它可以帮你省下一些开发时间。解释器可以交互式使用,这样就可以很方便的测试语言中的各种功能,以便于编写发布用的程序,或者进行自下而上的开发。还可以当它是一个随手可用的计算器。
Python 可以写出很紧凑和可读性很强的程序。用 Python 写的程序通常比同样的 C 或 C++ 程序要短得多,这是因为以下几个原因:
l 高级数据结构使你可以在一个单独的语句中表达出很复杂的操作;
l 语句的组织依赖于缩进而不是 begin/end 块;
l 不需要变量或参数声明。
Python 是可执行的:如果你会用 C 语言写程序,那就可以很容易的为解释器添加新的集成模块和功能,或者优化瓶颈,使其达到最大速度,或者使 Python 能够链接到所需的二进制架构上(比如某个专用的商业图形库)。等你真正熟悉这一切了,你就可以把 Python 集成进由 C 写成的程序,把 Python 当作这个程序的扩展或命令行语言。
顺便说一下,这个语言的名字来源于 BBC 的“ Monty Python's Flying Circus ”节目,和凶猛的爬虫没有任何关系。在文档中引用 Monty Python 典故不仅是允许的,而且还受到鼓励!
现在你已经了解了 Python 中所有激动人心的东西,大概你想仔细的试试它了。学习一门语言最好的办法就是使用它,你会很乐于这样做。
下一节中,我们会很机械的说明解释器的用法。这没有什么神秘的,不过有助于我们练习后面展示的例子。
本指南其它部分通过例子介绍了 Python 语言和系统的各种功能,开始是简单表达式、语法和数据类型,接下来是函数和模块,最后是诸如异常和自定义类这样的高级内容。
2. 使用 Python 解释器
2.1 调用解释器
通常 Python 的解释器被安装在目标机器的 /usr/local/bin/python 目录下;把 /usr/local/bin 目录放进你的 UNIX Shell 的搜索路径里,确保它可以通过输入
python
来启动。因为安装路径是可选的,所以也有可能安装在其它位置,你可以与安装 Python 的用户或系统管理员联系。(例如, /usr/local/python 就是一个很常见的选择)
输入一个文件结束符( UNIX 上是 Ctrl+D , Windwos 上是 Ctrl+Z )解释器会以 0 值退出(就是说,没有什么错误,正常退出--译者)。如果这没有起作用,你可以输入以下命令退出:
import sys; it()
解释器的行编辑功能并不很复杂。装在 Unix 上的解释器可能会有 GNU readline 库支持,这样就可以额外得到精巧的交互编辑和历史记录功能。可能检查命令行编辑器支持能力最方便的方式是在主提示符下输入 Ctrl+P 。如果有嘟嘟声(计算机扬声器),说明你可以使用命令行编辑功能,从附录 A 可以查到快捷键的介绍。如果什么也没有发声,或者 P 显示了出来,说明命令行编辑功能不可用,你只有用退格键删掉输入的命令了。
解释器的操作有些像 Unix Shell :使用终端设备作为标准输入来调用它时,解释器交互的解读和执行命令,通过文件名参数或以文件作为标准输入设备时,它从文件中解读并执行脚本。
启动解释器的第三个方法是
python -c command [arg] ...
这种方法可以在命令行中直接执行语句,等同于 Shell 的 -c 选项。因为 Python 语句通常会包括空格之类的特殊字符,所以最好把整个语句用双引号包起来。
注意“ python file ”和“ python <file ”是有区别的。对于后一种情况,程序中类似于调用 input() 和 raw_input() 这样的输入请求,来自于确定的文件。因为在解析器开始执行之前,文件已经完全读入,所以程序指向文件尾。在前一种情况(这通常是你需要的)它们从来自于任何联接到 Python 解释器的标准输入,无论它们是文件还是其它设备。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论