流程控制
条件语句 (if, elif, else)
语法
python
if condition1:
statement_block_1
elif condition2:
statement_block_2
elif condition3:
statement_block_3
else:
statement_block_else
案例
python
score = 75
print(f"分数: {score}")
if score >= 90:
print("等级: A")
print("优秀")
elif score >= 80:
print("等级: B")
print("良好")
elif score >= 70:
print("等级: C")
print("一般")
elif score >= 60:
print("等级: D")
print("及格")
else:
print("等级: E")
print("不及格")
循环语句 (for
, while
)
基本语法
for
python
for variable in iterable:
statement_block
python
# 遍历列表
fruits = ["苹果", "香蕉", "樱桃"]
for fruit in fruits:
print(f"- {fruit}", end=" ") # - 苹果 - 香蕉 - 樱桃
print()
# 遍历字符串
for char in "Python":
print(char, end=" ") # P y t h o n
while
python
while condition:
# 条件 condition 为 True 时执行的代码块
statement_block
# 重要: 通常需要在此处更新条件相关的变量,否则可能导致无限循环
python
# 遍历列表
fruits = ["苹果", "香蕉", "樱桃"]
while len(fruits):
print(fruits.pop())
print("列表已空")
循环控制 (break
, continue
, pass
)
break
:终止当前循环continue
:跳过本次执行pass
:啥也不干,占位
python
# break 和 continue 示例
for i in range(1, 11):
if i == 7:
print("遇到 7,跳出循环 (break)")
break
if i % 2 == 0:
print(f"遇到偶数 {i},跳过本次打印 (continue)")
continue
print(f"处理奇数: {i}")
# pass 示例
number = 0
if number == 0:
pass # 这里暂时不处理等于 0 的情况
else:
print("非零")
print("\npass 示例执行完毕")
异常处理(try, except, else, finally)
基本语法
- try 块是必须的。
- 至少需要一个 except 或一个 finally 块。
- 可以有多个 except 块来处理不同类型的异常。
- else 块在没有异常时执行。
- finally 块总是执行。
python
try:
# 尝试执行的代码块,这里可能会引发异常
statement_block_try
except ExceptionType1 as e1:
# 如果 try 块中引发了 ExceptionType1 类型的异常,执行这里的代码
# 可以通过变量 e1 (可选) 访问异常对象本身
statement_block_except1
except (ExceptionType2, ExceptionType3) as e2:
# 可以同时捕获多种类型的异常
statement_block_except2
except Exception as e_general:
# 捕获所有继承自 Exception 的异常 (通常用于捕获未知或通用错误)
# 建议捕获更具体的异常类型
statement_block_general_except
else:
# 如果 try 块中的代码 **没有** 引发任何异常,则执行这里的代码 (可选)
statement_block_else
finally:
# 无论 try 块中是否发生异常,**总是**会执行这里的代码 (可选)
# 通常用于执行清理操作,如关闭文件、释放资源等
statement_block_finally
案例
python
numerator = 10
denominator = 0
try:
result = numerator / denominator
print(f"计算结果: {result}") # 如果除法成功,会执行这里
# 捕获特定的除零错误
except ZeroDivisionError as zde:
print(f"错误: 不能除以零!详细信息: {zde}") # 捕获特定的除零错误
# 捕获可能的类型错误
except TypeError as te:
print(f"错误: 类型不匹配!详细信息: {te}") # 捕获可能的类型错误
# 捕获所有可能的错误
except Exception as e:
print(f"发生了未知错误: {e}")
# 输出: 错误: 不能除以零!详细信息: division by zero