控制流语句(Control Flow Statements)用于控制程序的执行顺序,使代码能够根据不同条件执行不同的逻辑。 控制流语句的开始部分通常是“条件”,接下来是一个代码块,称为“子句”。 在开始学习具体的Python控制流语句之前,下面将介绍条件和代码块。
name=""
password=""
if name == 'Mary':
print('Hello Mary')
if password == 'swordfish':
print('Access granted.')
else:
print('Wrong password.')
Wrong password.
第一个代码块开始于代码行 print('Hello Mary')
,并且包含后面所有的行。
在这个代码块中有另一个代码块,它只有一行代码:
print('AccessGranted.')
。 第三个代码块也只有一行: print('Wrong password.')
。
下面穿插点额外的内容。可将if
语句放在其他 if
语句块中,如下所示:
# name = input('What is your name? ')
name='Gumby'
if name.endswith('Gumby'):
if name.startswith('Mr.'):
print('Hello, Mr. Gumby')
elif name.startswith('Mrs.'):
print('Hello, Mrs. Gumby')
else:
print('Hello, Gumby')
else:
print('Hello, stranger')
Hello, Gumby
在代码逻辑中,如果检测到名字以"Gumby"结尾,程序会进一步检查名字的开头部分。
这一功能是通过在第一个条件代码块中嵌套一条独立的if语句实现的。
值得注意的是,代码中使用了elif
结构来构建多级条件判断。
最后的else
分支作为默认处理路径,在前面的所有条件均不满足时执行。
需要特别说明的是,这两个else
分支都是可选的:如果省略内部else
分支,系统将自动过滤掉所有不以"Mr."或"Mrs."开头但以"Gumby"结尾的名字;
而如果省略外部else
分支,则程序会忽略所有不符合前面任何条件的"陌生人"情况。