Python是一种通用性编程语言,可以看作是一种对LISP语言的改良(其中加入了一些其他编程语言的优点,如面向对象等)。Python作为一种解释型语言,强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。与C++或Java相比,无论程序规模大小,Python都试图让程序的结构清晰明了,让开发者能够用更少的代码表达想法。
Python将变量称为标识符,其命名规则主要有以下3点。
(1)第一个字符必须是字母表中的字母或下画线“_”(在Python 3.x中也可使用非ASCII字母标识符)。
(2)标识符的其他部分由字母、数字和下画线组成。
(3)标识符对大小写敏感。
以下变量命名与赋值在Python 3.x中都是被允许的。
与C、C++、Java、C#等语言不同,Python没有定义常量的关键字,即Python中没有常量。为了实现与其他语言中功能相近的常量,可以使用面向对象的方法编写一个“常量”模块。
将以下代码保存为test-const.py。
上述代码的运行结果如图3-1所示。
图3-1 使用面向对象的方法定义Python“常量”
可以看到,第一次为CONSTANT.TEST赋值后能够成功执行,当尝试为CONSTANT.TEST重新赋值时出现错误提示。由于CONSTANT.TEST的内容不可修改,相当于起到了常量的作用。
保留字即其他语言中的关键字,是指在语言本身的编译器中已经定义过的单词,具有特定含义和用途,用户不能再将这些单词作为变量名或函数名、类名使用。Python 3.7.2中的保留字主要有False、None等35个。
温馨提示:Python 3.7.2中的35个保留字
False、None、True、and、as、assert、async、await、break、class、continue、def、del、elif、else、except、finally、for、from、global、if、import、in、is、lambda、nonlocal、not、or、pass、raise、return、try、while、with、yield。
在Python环境中,可以执行以下命令查看当前版本的保留字。
上述代码的运行结果如图3-2所示。
图3-2 查看保留字
Python中的单行注释以“#”开头。它可以单独占一行,也可以在同一行的代码右边出现,示例如下。
需要注意的是,一行中“#”右侧的所有字符均被认为是注释内容,因此下述代码中的“print(test)”将不被执行。
当注释内容超过一行时,可以在每行开头都使用“#”形成多行注释,还可以使用“'''”(连续3个英文半角单引号)或“"""”(连续3个英文半角双引号)将多行注释内容包括起来,示例如下。
通常来说,一条Python语句应在一行内写完,但如果语句很长,也可以使用反斜杠“\”来实现多行语句,示例如下。
注意:在成对的方括号“[]”、花括号“{}”或圆括号“()”中的多行语句,不需要使用反斜杠“\”,示例如下。
可见,编写程序时使用的是物理行,而在Python环境中使用的则是逻辑行。在Python中可以使用分号“;”标识一个逻辑行的结束,但为了避免使用分号,通常每个物理行只写一个逻辑行。
Python最具特色的语法是使用缩进来表示代码块,优点是不需要像其他语言一样使用大括号“{}”。行首的空白(空格或制表符)用来决定逻辑行的缩进层次,从而决定语句的分组(即代码块)。这意味着不同代码块缩进的距离(即行首空白)可以不同,但同一代码块的语句必须有相同的缩进距离,每一组这样的语句称为一个代码块,示例如下。
而以下代码由于最后一行语句缩进距离不一致,运行时将出现图3-3所示的错误。
图3-3 缩进距离不一致导致运行错误
注意:不要混合使用空格和制表符来缩进,这将导致同一段Python代码在不同的操作系统或平台上无法正常工作。