2.1 Python的语法特点
微视频
学习Python开发之前,首先需要了解Python程序的语法特点。
2.1.1 代码注释
Python中的注释有单行注释和多行注释。Python中单行注释以#开头,如:
#这是一个单行注释 print("茅檐低小,溪上青青草。")
单行注释既可以放在代码的前一行,也可以放在代码的右侧。例如:
print("茅檐低小,溪上青青草。") #这是一个单行注释
☆大牛提醒☆
添加注释的目的是解释代码的功能和用途。注释可以出现在代码的任意位置,但是需要注意的是,注释不能分割关键字和标识符。例如,下面的注释就是错误的。
aa=float(#这是一个单行注释 input("请输入商品的价格:"))
☆经验之谈☆
在实际开发的过程中,注释除了可以解释代码的功能和用途以外,还可以用于临时注释不想被执行的代码。这个技巧在代码排错的时候非常有用。
多行注释用3个单引号(''')或3个双引号(""")将注释括起来。
(1)3个单引号。
''' 创作团队:云尚科技 文件名称:2.11.py 功能介绍:主要实现系统安全的检查工作 '''
(2)3个双引号。
""" 创作团队:云尚科技 文件名称:2.11.py 功能介绍:主要实现系统安全的检查工作 """
2.1.2 代码缩进
与其他常见的程序设计语言不同,Python的代码块不使用大括号({})来控制类、函数及其他逻辑判断。Python语言的主要特色就是采用代码缩进和冒号来区分代码之间的层次结构。
【例2.1】执行缩进(源代码\ch02\2.1.py)。
#严格执行缩进的规则 if 1==2: print ("客从远方来,遗我一端绮。") print ("相去万余里,故人心尚尔。") else: print ("著以长相思,缘以结不解。") print ("以胶投漆中,谁能别离此。")
程序运行结果如图2-1所示。
图2-1 例2.1的程序运行结果
☆经验之谈☆
实现缩进的方法有两种,包括使用空格和<Tab>键。其中,一个Tab键作为一个缩进量;使用空格时,通常采用4个空格作为一个缩进量。建议采用空格进行缩进。
Python语言对代码的缩进要求非常严格,同一个级别代码块的缩进量必须相同。如果缩进量不相同,则会抛出SyntaxError异常。例如以下错误提示:
>>>if 1==2: print ("客从远方来,遗我一端绮。") print ("相去万余里,故人心尚尔。") SyntaxError: invalid syntax
☆大牛提醒☆
同一个级别代码块的缩进量,除了保证相同的缩进空白数量,还要保证相同的缩进方式,因为有的使用Tab键缩进,有的使用2个或4个空格缩进,需要改为相同的方式。
2.1.3 编码规范
使用Python编写代码,需要遵守如下规范:
(1)不能在行尾加分号,例如以下代码是不规范的。
if 1==2: print ("客从远方来,遗我一端绮。"); print ("相去万余里,故人心尚尔。");
(2)每行的字符数最多不超过80个。如果超过,建议使用小括号将多行的内容隐式连接起来。例如以下代码:
a=("客从远方来,遗我一端绮。相去万余里,故人心尚尔。文采双鸳鸯,裁为合欢被。" "著以长相思,缘以结不解。以胶投漆中,谁能别离此?")
(3)每个import语句只导入一个模块,尽量避免一次导入多个模块。例如,下面的代码是不规范的。
import sys,os
推荐使用以下写法:
import sys import os
(4)通过必要的空行可以增加代码的可读性。在函数或者类的定义之间空两行,方法定义之间空一行。如果需要分割一些功能,也可以空一行。
(5)尽量避免在循环中使用+和+=运算符进行累加字符串。由于字符串是可变的,这样做会创建临时对象,而这通常是不必要的操作。
2.1.4 换行问题
在Python语言中,常见的换行问题如下:
1.换行符
如果是Linux/UNTX操作系统,换行字符为ASCII LF(linefeed);如果是DOS/Windows操作系统,换行字符为ASCII CR LF(return + linefeed);如果是Mac OS操作系统,换行字符为ASCII CR(return)。
例如,在Windows操作系统中换行:
>>>print ("客从远方来,\n遗我一端绮。") 客从远方来, 遗我一端绮。
2.程序代码超过一行
如果程序代码超过一行,可以在每一行的结尾添加反斜杠(\),继续下一行,这与C/C++的语法相同。例如:
if 100 < a < 100 and 1 <=b <=10\ and 1000 <= c <= 10000 and 0 <= d < 26: #多个判断条件
☆大牛提醒☆
行末的反斜杠(\)之后不要加注释文字。
如果是以小括号()、中括号[]或大括号{}包含起来的语句,不必使用反斜杠(\)就可以直接分成数行。例如:
name = ('苹果', '香蕉', '橘子', '芒果', '西瓜', '橙子')
3.将数行表达式写成一行
如果要将数行表达式写成一行,只需在原来除最后一行以外的每一行的结尾添加分号(;)即可。例如:
>>>a = '苹果'; b = '香蕉'; c = '橙子' >>> a '苹果' >>> b '香蕉' >>> c '橙子'