Python 编程语言有许多语法结构、标准库函数和交互式开发环境功能。好在,你可以忽略大多数内容。你只需要学习部分内容,就能编写一些方便的小程序。
但在动手之前,你必须学习一些基本编程概念。就像魔法师培训,你可能认为这些概念既深奥又啰嗦,但有了一些知识和实践,你就能像魔法师一样指挥你的计算机,完成难以置信的事情。
本章有几个例子,我们鼓励你在交互式环境中输入它们。交互式环境让你每次执行一条 Python 指令,并立即显示结果。使用交互式环境对于了解基本 Python 指令的行为是很好的,所以你在阅读时要试一下。做过的事比仅仅读过的内容,更令人印象深刻。
1.1 在交互式环境中输入表达式
启动 IDLE 就运行了交互式环境,这是和 Python 一起安装的。在 Windows 上,打开“开始”菜单,选择“All ProgramsPython 3.3”,然后选择“IDLE(Python GUI)”。在 OS X 上,选择“ApplicationsMacPython 3.3IDLE”。在 Ubuntu 上,打开新的终端窗口并输入 idle3。
一个窗口会出现,包含>>>提示符,这就是交互式环境。在提示符后输入 2 + 2,让 Python 做一些简单的算术。
>>> 2 + 2
>4
IDLE 窗口现在应该显示下面这样的文本
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:06:53) [MSC v.1600 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 2 + 2
4
>>>
在 Python 中,2 + 2 称为“表达式”,它是语言中最基本的编程结构。表达式包含“值”(例如 2)和“操作符”(例如+),并且总是可以求值(也就是归约)为单个值。这意味着在 Python 代码中,所有使用表达式的地方,也可以使用一个值。
在前面的例子中,2 + 2 被求值为单个值 4。没有操作符的单个值也被认为是一个表达式,尽管它求值的结果就是它自己,像下面这样:
>>> 2
>2
错误没关系!
如果程序包含计算机不能理解的代码,就会崩溃,这将导致 Python 显示错
误信息。错误信息并不会破坏你的计算机,所以不要害怕犯错误。“崩溃”只是意味着程序意外地停止执行。
如果你希望对一条错误信息了解更多,可以在网上查找这条信息的准确文本,
找到关于这个错误的更多内容。也可以查看 http://nostarch.com/automatestuff/,这里有常见的 Python 错误信息和含义的列表。
Python 表达式中也可以使用大量其他操作符。例如,表 1-1 列出了 Python 的所有数学操作符。
表 1-1 数学操作符,优先级从高到低
数学操作符的操作顺序(也称为“优先级”)与数学中类似。*操作符首先求
值,接下来是、/、//和%操作符,从左到右。+和-操作符最后求值,也是从左到右。
如果需要,可以用括号来改变通常的优先级。在交互式环境中输入下列表达式:
>>> 2+3*6
20
>>> (2 + 3) * 6
30
>>> 48565878 * 578453 28093077826734
>>> 2 ** 8
256
>>> 23 / 7
3.2857142857142856
>>> 23 // 7
3
>>> 23 % 7
2
>>> 2 + 2
4
>>> (5 - 1) * ((7 + 1) / (3 - 1)) 16.0
在每个例子中,作为程序员,你必须输入表达式,但 Python 完成较难的工作,将它求值为单个值。Python 将继续求值表达式的各个部分,直到它成为单个值,如图 1-1 所示。
将操作符和值放在一起构成表达式的这些规则,是 Python 编程语言的基本部分,就像帮助我们沟通的语法规则一样。下面是例子:
This is a grammatically correct English sentence. This grammatically is sentence not English correct a.
第二行很难解释,因为它不符合英语的规则。类似地,如果你输入错误的 Python指令,Python 也不能理解,就会显示出错误信息,像下面这样:
>>> 5 +
> File "<stdin>", line 1
> 5 +
> ^
SyntaxError: invalid syntax >>> 42 + 5 + * 2
File "<stdin>", line 1
42+5+*2
^
SyntaxError: invalid syntax
你总是可以在交互式环境中输入一条指令,检查它是否能工作。不要担心会弄坏计算机:最坏的情况就是 Python 显示出错信息。专业的软件开发者在编写代码时,常常会遇到错误信息。