Python Overview
运行python程序
通过 Python 运行程序的两种方法: 交互式解释器提示符
或直接运行一个源代码文件
使用解释器提示符
在操作系统中打开终端 (Terminal) 程序,然后通过输入 python3
并按下 [enter]
键来打开 Python 提示符(Python Prompt)。当启动 Python 后,在能开始输入内容的地方出现了 >>>
。这个被称作 Python 解释器提示符(Python Interpreter Prompt) 。直接在 Python 解释器提示符后面输入你的语句即可。
退出解释器提示符:
GNU/Linux 或 OS X 上的 Shell 程序: 按 [ctrl + d]
组合键或是输入 exit()
Windows 命令提示符: 按 [ctrl + z]
组合键并敲击 [enter]
键
使用一份源代码文件
启动编辑器,输入程序并保存。保存到任何你知道其位置与路径的文件夹,并为文件赋予 .py
扩展名。
运行:打开终端窗口; 使用 cd
命令来改变目录到保存文件的地方; 输入命令 python file.py
来运行程序。
获取帮助
如果需要获得 Python 中有关任何函数或语句的快速信息,可以使用其内置的 help
功能。这在使用解释器提示符时十分有用。例如,运行 help(len)
命令, 这将显示出有关 len
函数的帮助。按下 q
键可以退出帮助。
注释
和R脚本一样,注释 是任何存在于 #
号右侧的文字,其主要用作写给程序读者看的笔记。
在程序中尽可能多地使用有用的注释(代码会告诉你怎么做,注释会告诉你为何如此):
-
解释假设
-
说明重要的决定
-
解释重要的细节
-
说明你想要解决的问题
-
说明你想要在程序中克服的问题,等等。
-
帮助几个月后的你理解自己的程序
标识符命名
命名标识符时,需遵守以下规则 (与R一样):
- 第一个字符必须是字母表中的字母 (a..zA..Z) 或下划线(
_
)。 - 标识符的其它部分可以由字符 (a..zA..Z) 、下划线(
_
)、数字 (0~9) 组成。 -
标识符名称区分大小写。
对象
Python 将程序中的任何内容统称为 对象 (Object)。这是一般意义上的说法。我们以“某某对象 (object)”相称,而非“某某东西 (something)”。
针对面向对象编程语言用户的提示:
Python 是强(Strongly)面向对象的,因为所有的一切都是对象, 包括数字、字符串与函数。
逻辑行与物理行
物理行 (Physical Line)
是在编写程序时所看到的内容。
逻辑行 (Logical Line)
是 Python 所看到的单个语句。Python 假定每一物理行会对应一个逻辑行。
Python 之中暗含这样一种期望:Python 鼓励每一行使用一句独立语句从而使得代码更加可读。
如果希望在一行物理行中指定多行逻辑行,必须通过使用分号(;
)来明确表明逻辑行或语句的结束。
强烈建议 对于每一行物理行最多只写入一行逻辑行。这个观点就是说不应该使用分号。
显式行连接 (Explicit Line Joining)
: 如果有一行非常长的代码,可以通过使用反斜杠将其拆分成多个物理行。
s = 'This is a string. \
This continues the string.'
print(s)
输出:
This is a string. This continues the string.
类似地,
i = \
5
等同于
i = 5
隐式行连接 (Implicit Line Joining)
: 在某些情况下,会存在一个隐含的假设,允许你不使用反斜杠。逻辑行以括号开始,它可以是方括号或花括号,但不能是右括号。
缩进
whitespace在 Python 中十分重要。实际上,whitespace在各行的开头非常重要。这被称作 缩进 (Indentation)。在逻辑行的开头留下whitespace (使用空格或制表符) 用以确定各逻辑行的缩进级别,而后者又可用于确定语句的分组。
放置在一起的语句必须 拥有相同的缩进,每一组这样的语句被称为 块 (block)。这一概念非常重要,因为错误的缩进可能会导致错误。
如何缩进
使用四个空格来缩进。这是来自 Python 语言官方的建议。好的编辑器会自动完成这一工作。请确保在缩进中使用数量一致的空格,否则程序将不会运行,或引发不期望的行为。
听来的一个tip:如果想让代码块的缩进回到起始点,在Windows中选中代码块后,用
ctrl+[
组合键可实现;如果想让代码块实现缩进,选中之后用ctrl+]
组合件即可完成。
针对静态编程语言程序员的提示
Python 将始终对块使用缩进,并且绝不会使用大括号。可以通过运行
from __future__ import braces
来了解更多信息。