2.2 Python语句及标识

知识链接

1.Python语句的缩进

Python语言与Arduino、Java、C#等编程语言最大的不同点是,Python代码块使用缩进对齐表示代码逻辑,而不是像Arduino一样使用花括号。这对习惯用花括号表示代码块的程序员来说,确实是学习Python的一个障碍。

Python每段代码块缩进的空白数量可以任意,但要确保同段代码块语句必须包含相同的缩进空白数量。

例1:由于缩进没有对齐而产生的语法错误。

#IF语句示例:

else语句的print函数和if语句的print函数没有缩进对齐,会产生语法错误,如图2.5所示。

图2.5 代码块没有缩进对齐产生的语法错误

建议在代码块的每个缩进层次使用单个制表符或两个空格,切记不能混用。

2.Python的多行语句

Python语句一般以新的一行作为前面语句的结束。但在一些情况下,有可能一条语句需要在多行输出,如语句过长,导致编辑器的窗口宽度不能完全显示时,就可以使用“\”将一行语句分为多行显示。

例2:多行显示一条语句。

3.Python引号

在Python语言中,引号主要用于表示字符串。可以使用单引号(')、双引号(")、三引号('''),引号必须成对使用。单引号和双引号用于程序中的字符串表示;三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符,三引号也用于程序中的注释。

例3:引号的应用。

4.Python标识符

标识符用于Python语言的变量、关键字、函数、对象等数据的命名。标识符的命名需要遵循下面的规则。

(1)可以由字母(大写A~Z或小写a~z)、数字(0~9)和_(下画线)组合而成,但不能由数字开头。

(2)不能包含除下画线以外的任何特殊字符,如%、#、&、逗号、空格等。

(3)不能包含空白字符(换行符、空格和制表符称为空白字符)。

(4)标识符不能是Python语言的关键字和保留字。

(5)标识符区分大小写,num1和Num2是两个不同的标识符。

(6)标识符的命名要有意义,做到见名知意。

例4:正确标识符的命名示例。

width、height、book、result、num、num1、num2、book_price。

例5:错误标识符的命名示例。

123rate(以数字开头)、Book Author(包含空格)、Address#(包含特殊字符)、class(calss是类关键字)。

5.Python关键字

Python预先定义了一部分有特别意义的标识符,用于语言自身使用。这部分标识符称为关键字或保留字,不能用于其他用途,否则会引起语法错误,随着Python语言的发展,其预留的关键字也会有所变化,如表2.1所示。

表2.1 Python预留的关键字表

6.注释

在编程过程中,为了让程序员方便阅读程序语句的含义,通常在程序语句后面加上注释,但这个注释不影响程序运行。在Python语言中有几种方法解决,笔者常用的是使用“#”和3个单引号(或3个双引号)的方法。“#”应用于单行注释,3个单引号(或3个双引号)应用于多行注释。例如:

7.Python算术运算符

Python算术运算符如表2.2所示。

表2.2 Python算术运算符

8.Python比较运算符

Python比较运算符如表2.3所示。

表2.3 Python比较运算符

课堂任务

Python的语法和其他编程语言的语法有所不同,编写Pathon程序之前需要对语法有所了解,才能编写规范的Python程序。因此,本节课堂任务是:

1.掌握Python的基句语法和标识符的使用规则。

2.识别Python预留的关键字。

探究活动

任务1

通过知识链接部分,可以了解相关语法,现在我们来探究如何改正:把以下程序输入到在Python自带的IDLE编辑器里,在编辑器里运行,发生错误,如图2.5所示。按规范进行缩进,再按F5键运行一次,如图2.6所示。

例1:由于缩进没有对齐而产生的语法错误。

以上两段程序中,不同的就是缩进问题,修改后的程序运行结果如图2.6所示。

图2.6 缩进运行结果图

任务2

符号“\”在编辑器中的使用。在Python自带的IDLE编辑器中输入如下程序,如图2.7所示,然后按F5键运行程序,如图2.8所示。

图2.7 符号“\”的使用

图2.8 使用符号“\”的效果

任务3

在Python自带的IDLE编辑器中输入如下程序,如图2.9所示。然后按F5键运行程序,如图2.10所示。

图2.9 引号的应用

图2.10 引号的应用效果

拓展训练

1.有一字符串很长,如何写成多行?

提示:除使用括号的办法可以做到之外,还有哪些方法?

2.3个单引号(或3个双引号)也可以表示跨行字符串,在Python的shell界面上操作如下代码,观察结果。