专栏导读
专栏订阅地址:https://blog.csdn.net/qq_35831906/category_12375510.html
在Python中,流程控制语句用于根据条件执行不同的代码块。以下是Python中常用的流程控制语句:
1. 条件语句
1.1 if语句
根据条件判断是否执行特定的代码块。
if condition: # 执行语句块
1.2 if-else语句
根据条件判断执行不同的代码块。
if condition: # 执行语句块1 else: # 执行语句块2
1.3 if-elif-else语句
根据多条件判断执行不同的代码,流程图如下:
代码:
if condition1: # 如果条件1为真,执行这里的代码 elif condition2: # 如果条件2为真,执行这里的代码 else: # 如果前面的条件都不为真,执行这里的代码
2 循环语句
循环语句用于重复执行一段代码,直到满足特定条件为止。Python提供了两种循环语句:for循环和while循环。
2.1 for循环
for循环用于遍历一个可迭代对象(如列表、元组、字符串等),执行循环体中的代码。它的基本语法如下:
for item in iterable: # 遍历可迭代对象中的每个元素,执行这里的代码
2.2 while循环:
while循环用于在满足特定条件的情况下重复执行一段代码,直到条件不再成立。它的基本语法如下:
while condition: # 只要条件为真,执行这里的代码
3 跳转语句
在 Python 中,跳转语句用于改变程序的执行流程,常见的跳转语句包括break、continue和pass。下面是它们的详细介绍:
3.1 break语句
break语句用于跳出当前所在的最内层循环(for循环或while循环),并继续执行循环后的代码。它常用于在满足特定条件时提前结束循环。例如:
for i in range(5): if i == 3: break print(i) 输出: 0 1 2
在上述例子中,当i等于3时,break语句被执行,跳出了循环。
3.2 continue语句
continue语句用于跳过当前循环中的剩余代码,直接进行下一次循环迭代。它常用于在满足特定条件时跳过当前循环的执行。例如:
for i in range(5): if i == 2: continue print(i) 输出: 0 1 3 4
在上述例子中,当i等于2时,continue语句被执行,跳过了该次循环的剩余代码,直接进行下一次循环迭代。
3.3 pass语句
pass语句用于表示一个空语句块,不执行任何操作。它通常用作占位符,用于在语法上需要语句但又不需要执行任何操作的地方。例如:
if condition: pass else: # 执行其他代码
在上述例子中,当条件满足时,pass语句不执行任何操作,而是直接跳过,执行else块中的代码。
4 异常处理语句(try-except语句)
在 Python 中,异常处理语句(try-except语句)用于捕获和处理代码执行过程中可能出现的异常情况,以防止程序意外终止。通过使用try-except语句,你可以编写代码来处理异常,而不是让程序崩溃。
下面是try-except语句的基本语法:
try: # 可能引发异常的代码块 except ExceptionType1: # 处理特定类型的异常1 except ExceptionType2: # 处理特定类型的异常2 except: # 处理其他所有类型的异常 else: # 如果没有异常发生,执行这里的代码 finally: # 无论是否发生异常,都执行这里的代码
try语句块中的代码是可能引发异常的代码块。如果在执行try语句块中的代码时引发了异常,那么相应的异常处理块(except语句块)会被执行。你可以使用一个或多个except语句块来处理特定类型的异常,也可以使用一个没有指定异常类型的except语句块来处理所有类型的异常。
除了except语句块,还可以使用else语句块和finally语句块:
- else语句块:当没有异常发生时,执行else语句块中的代码。
- finally语句块:无论是否发生异常,都会执行finally语句块中的代码。
下面是一个示例:
try: # 可能引发异常的代码块 result = 10 / 0 # 除以零会引发ZeroDivisionError异常 except ZeroDivisionError: print("除以零错误!") except Exception as e: print("其他异常:", str(e)) else: print("没有发生异常。") finally: print("无论是否发生异常,都执行这里的代码。")
在上述示例中,由于除以零会引发ZeroDivisionError异常,所以程序会跳转到相应的except语句块,输出"除以零错误!"。然后会执行finally语句块中的代码,输出"无论是否发生异常,都执行这里的代码。"。
5 语句嵌套
在Python中,语句嵌套是指将一个或多个语句放置在另一个语句的内部。常见语句嵌套形式包条件语句嵌套、循环语句套和函数定义语嵌套。
5.1 条件语句套
if condition1: # 执行语句块1 if condition2: # 执行语句块2 else: # 执行语句块3 else: # 执行句块4
5.2 循语句嵌套
5.2.1 for 循环嵌套for 循环
for i in range(5): # 外层循环 for j in range(3): # 内层循环 # 执行语句块
5.2.2 while循环嵌套while循环
i = 1 while i <= 3: print("外层循环:", i) j = 1 while j <= 2: print("内层循环:", j) j += 1 i += 1
在上述示例中,外层的 while 循环会迭代 3 次,每次迭代时内层的 while 循环会执行 2 次。这样会输出外层循环的值以及内层循环的值。
在Python中,你可以在一个循环语句中嵌套另一个循环语句,例如在while循环中嵌套for循环,或者在for循环中嵌套while循环。这种循环嵌套可以用于处理更复杂的迭代和控制流程。下面是这两种循环嵌套的示例:
5.2.3 while循环嵌套for循环
i = 1 while i <= 3: print("外层循环:", i) for j in range(2): print("内层循环:", j) i += 1
在上述示例中,外层的while循环会迭代3次,每次迭代时内层的for循环会执行2次。这样会输出外层循环的值以及内层循环的值。
输出:
5.2.4 for循环嵌套while循环
for i in range(3): print("外层循环:", i) j = 0 while j < 2: print("内层循环:", j) j += 1
在上述示例中,外层的for循环会迭代3次,每次迭代时内层的while循环会执行2次。这样会输出外层循环的值以及内层循环的值。
输出:
5.3 函数定义语句嵌套
def outer_function(): # 外层函数 def inner_function(): # 内层函数 # 执行语句块 # 执行语句块
以下是一个使用Python编写的逢7拍腿游戏的示例代码:
def clap_game(): print("欢迎来到逢7腿游戏!") print("按下回车键开始...") input() target_score = 100 current_score = 0 while current_score < target_score: print("当前分数:", current_score) print("请输入 'clap' 进行拍:") user_input = input() if user_input.lower() == "clap": current_score += 1 if current_score % 7 0 or '7' in str(current_score): print("恭喜你到了7的倍数或包含数字7!") else print("输入无效,请重新输入!") print("恭喜达到目标分数!", target_score) print("戏结束!") clap_game()