目录
1 前言
Python中的流程控制是编程中非常重要的一部分,它允许你根据条件、循环或其他因素来决定程序的执行流程。本文对Python中流程控制进行详细介绍和例子说明。
2 条件判断
在Python中,条件判断(也称为条件语句)是编程中非常基础且重要的一部分。它允许程序根据特定的条件来执行不同的代码块。Python使用if、elif(可选)和else(可选)关键字来实现条件判断。
2.1 基本语法
if 条件1:
# 当条件1为真时执行的代码块
elif 条件2:
# 当条件1为假且条件2为真时执行的代码块(可选)
elif 条件3:
# 更多的条件判断(可选)
# ...
else:
# 当所有条件都为假时执行的代码块(可选)
- if:如果条件1为真(True),则执行其后的代码块。
- elif:这是else if的缩写,用于检查额外的条件。elif语句是可选的,并且可以有多个。但是,它们必须跟在if或另一个elif语句之后。只有当if语句和之前的所有elif语句的条件都为假时,才会检查elif语句的条件。
- else:当if和所有elif语句的条件都为假时,执行else语句后的代码块。else语句也是可选的。
2.2 使用示例
示例一:简单的条件判断
x = 10
if x > 0:
print("x 是正数")
示例2:使用elif和else
x = 0
if x > 0:
print("x 是正数")
elif x < 0:
print("x 是负数")
else:
print("x 是零")
示例3:多个elif
score = 85
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 70:
print("中等")
elif score >= 60:
print("及格")
else:
print("不及格")
2.3 注意事项
- 条件可以是任何返回布尔值(True 或 False)的表达式。
- 缩进在Python中非常重要,它定义了代码块的范围。在条件语句中,每个if、elif、else后面的代码块都需要适当的缩进。
- elif和else语句是可选的,但if语句是必需的。
- 条件判断中的条件可以包含复杂的逻辑和操作符,如and、or、not等。
3 循环
在Python中,循环是一种控制流程的结构,它允许你重复执行一段代码,直到满足某个条件为止。Python提供了两种主要的循环结构:for循环和while循环。
3.1 for循环
for循环用于遍历一个序列(如列表、元组、字符串)或其他可迭代对象(如字典、集合或文件)的元素。在每次循环中,都会执行指定的代码块,直到序列或可迭代对象的所有元素都被遍历完毕。
语法
for 变量名 in 可迭代对象:
# 循环体,即需要重复执行的代码块
示例
# 遍历列表
my_list = [1, 2, 3, 4, 5]
for i in my_list:
print(i)
# 遍历字符串
my_string = "hello"
for char in my_string:
print(char)
# 遍历字典的键(或值)
my_dict = {'a': 1, 'b': 2, 'c': 3}
for key in my_dict:
print(key, my_dict[key]) # 也可以同时遍历键和值
# 使用enumerate同时遍历索引和元素
for index, value in enumerate(my_list):
print(index, value)
3.2 while循环
while循环会在指定的条件为真时重复执行代码块。只要条件为真,循环就会继续执行;一旦条件变为假,循环就会停止。
语法
while 条件:
# 循环体,即需要重复执行的代码块
# 通常会有一个改变条件的语句,以便循环最终能够停止
示例
# 简单的while循环
count = 0
while count < 5:
print(count)
count += 1 # 增加计数器,以便循环最终能够停止
# 使用while循环进行无限循环(通常与break结合使用)
while True:
user_input = input("请输入一个数字(输入'q'退出):")
if user_input == 'q':
break
# 处理其他输入...
# 使用while循环进行数值迭代(通常不推荐,因为for循环更简洁)
i = 0
while i < 5:
print(i)
i += 1
3.3 循环控制语句
在循环中,你还可以使用两个控制语句来改变循环的执行流程:break和continue。
- break:用于立即终止当前循环,不再执行循环体中剩余的代码,并跳出循环。
- continue:用于跳过当前循环的剩余代码,直接进入下一次循环。
示例
# 使用break终止循环
for i in range(10):
if i == 5:
break
print(i) # 只会打印0到4
# 使用continue跳过循环的某次迭代
for i in range(10):
if i % 2 == 0: # 如果是偶数
continue # 跳过这次循环的剩余部分
print(i) # 只会打印奇数
4 异常处理
Python的异常处理是一种强大的机制,用于在程序执行过程中捕获和处理错误。当Python代码在运行时遇到问题时,它会引发一个异常。如果没有适当的异常处理,程序通常会终止并显示一个错误信息。但是,通过使用try、except、else和finally块,程序员可以定义在发生异常时应该执行的代码。
4.1 基本语法
try:
# 尝试执行的代码块
pass # 替换为你可能会引发异常的代码
except ExceptionType1:
# 当捕获到ExceptionType1异常时执行的代码块
pass # 替换为你处理该异常的代码
except ExceptionType2:
# 当捕获到ExceptionType2异常时执行的代码块
pass # 替换为你处理该异常的代码
else:
# 如果没有异常发生,会执行这个代码块
pass # 替换为你想要执行的代码(可选)
finally:
# 无论是否发生异常,都会执行这个代码块
pass # 替换为你想要执行的代码(例如关闭文件、释放资源等)
4.2 使用示例
示例一:基本的异常处理
try:
result = 10 / 0 # 这会引发一个ZeroDivisionError异常
except ZeroDivisionError:
print("除数不能为零!")
# 输出: 除数不能为零!
示例二:捕获多个异常
try:
# 尝试打开文件并执行一些操作
with open('non_existent_file.txt', 'r') as f:
print(f.read())
except FileNotFoundError:
print("文件不存在!")
except IOError:
print("发生I/O错误!")
# 假设文件不存在,输出: 文件不存在!
示例三:使用else和finally
try:
# 尝试执行可能会引发异常的代码
result = 10 / 2
except ZeroDivisionError:
print("除数不能为零!")
else:
# 如果没有异常发生,执行这里的代码
print("计算结果为:", result)
finally:
# 无论是否发生异常,都会执行这里的代码
print("这是finally块,无论是否发生异常都会执行。")
# 输出:
# 计算结果为: 5.0
# 这是finally块,无论是否发生异常都会执行。
4.3 注意事项
- 尽量避免使用空的except块(即except:),因为它会捕获所有的异常,这可能会隐藏一些你不想忽略的错误。
- 在可能的情况下,尽量指定要捕获的异常类型,以便更精确地处理异常。
- 使用finally块来执行清理操作(如关闭文件、释放资源等),以确保无论是否发生异常,这些操作都会被执行。
以上即是本章Python流程控制相关的一些基础的知识,在开始编写Python前务必掌握,如有遗留欢迎补充,抱拳 !!!
ps:博主也是个Python萌新,后续会持续更新Python学习内容,如感兴趣跟着博主从零开始学习关注点一下吧~
有什么问题都可以评论区留言,看见都会回复的!!!
如果你觉得本篇文章对你有所帮助的,多多支持!!!
点赞收藏评论,抱拳了!!
标签:elif,Python,流程,else,循环,详细,print,代码 From: https://blog.csdn.net/weixin_47698656/article/details/140209411