控制流语句(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分支,则程序会忽略所有不符合前面任何条件的"陌生人"情况。