在之前的文章中大致的介绍过
python
中的流程控制语句,今天通过一些案例来详细了解一下python
中的流程语句。目前python
中流程控制语句,包含如下,如有遗漏欢迎留言补充。
条件判断语句
在python中条件判断语句包括了if
、else
、elif
,还有在python 3.10
的版本新增了match-case
语句。
if-elif-else语句
在Python
中,if
语句用于仅在某个条件为真时执行一段代码块。Python
中if
语句的基本语法如下:
if condition:
# 如果条件为真,则执行的代码
这里的
condition
是一个表达式,它被评估为True
或False
。如果条件为True
,则执行if
块内的代码。如果条件为False
,则跳过if
块内的代码。
还可以使用else
关键字指定一个代码块,以在条件为False
时执行:
if condition:
# 如果条件为真,则执行的代码
else:
# 如果条件为假,则执行的代码
此外,您可以使用elif
关键字指定要检查的其他条件:
if condition1:
# 如果条件1为真,则执行的代码
elif condition2:
# 如果条件2为真,则执行的代码
else:
# 如果条件1和条件2都为假,则执行的代码
案例演示
# 提示用户输入一个数字
num = int(input("请输入一个数字:"))
# 检查数字是正数、负数还是零
if num > 0:
print("这个数字是正数")
elif num < 0:
print("这个数字是负数")
else:
print("这个数字是零")
在这个例子中,程序提示用户输入一个数字。然后,程序使用if-elif-else语句检查数字是正数、负数还是零。如果数字大于0,则程序打印“这个数字是正数”。如果数字小于0,则程序打印“这个数字是负数”。如果数字等于0,则程序打印“这个数字是零”。
match-case
在Python 3.10及更高版本中,match-case
语句可以用于替代较老的if-elif-else
语句,以更清晰和简洁的方式处理多个条件。
以下是Python中match-case语句的一个例子:
# 定义一个函数,根据输入的操作符执行相应的操作
def calculate(num1, num2, operator):
match operator:
case '+':
result = num1 + num2
case '-':
result = num1 - num2
case '*':
result = num1 * num2
case '/':
result = num1 / num2
case _:
print("无效的操作符")
return
print(f"{num1} {operator} {num2} = {result}")
# 测试calculate函数
calculate(5, 3, '+') # 输出:5 + 3 = 8
calculate(5, 3, '-') # 输出:5 - 3 = 2
calculate(5, 3, '*') # 输出:5 * 3 = 15
calculate(5, 3, '/') # 输出:5 / 3 = 1.6666666666666667
calculate(5, 3, '%') # 输出:无效的操作符
在这个例子中,我们定义了一个名为
calculate
的函数,它接受两个数字和一个操作符作为参数。函数使用match-case
语句根据操作符执行相应的操作,并打印出计算结果。如果操作符无效,则函数打印出错误信息并返回。
循环语句
循环语句是编程中常用的一种结构,用于重复执行一段代码。Python中有两种主要的循环语句:for
循环和while
循环。
for语句
for循环用于遍历序列(如列表、元组、字符串等)中的元素,语法如下:
for 变量 in 序列:
# 执行的代码
在这里,变量是用于存储序列中当前元素的变量名,序列是要遍历的序列。在每次循环中,变量将被赋值为序列中的下一个元素,并执行与循环相关联的代码块。当序列中的所有元素都被遍历完毕后,循环结束。
以下是一个使用for循环的例子:
# 遍历列表中的元素
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
# 遍历字符串中的字符
for char in "hello":
print(char)
while语句
while
循环用于在条件为真时重复执行一段代码,语法如下:
while 条件:
# 执行的代码
在这里,条件是一个布尔表达式,当其为真时,循环将继续执行。在每次循环中,将检查条件是否为真,如果为真,则执行与循环相关联的代码块。当条件为假时,循环结束。
以下是一个使用while循环的例子:
# 计算1到10的和
total = 0
i = 1
while i <= 10:
total += i
i += 1
print(total)
在这个例子中,我们使用
while
循环计算1到10的和。我们使用total
变量来存储总和,使用i变
break关键字
break
是Python
中的一个关键字,用于在循环中提前退出循环。当break
语句被执行时,循环将立即终止,并跳转到循环后面的第一行代码。break
语句通常与条件语句一起使用,以便在满足某些条件时退出循环。
以下是一个使用break语句的例子:
# 在列表中查找特定元素
fruits = ["apple", "banana", "cherry", "orange", "pear"]
for fruit in fruits:
if fruit == "orange":
print("找到了橙子!")
break
else:
print("没有找到橙子。")
在这个例子中,我们使用for循环遍历一个水果列表,并使用if语句检查当前元素是否为橙子。如果找到了橙子,我们使用
break
语句退出循环并打印一条消息。如果没有找到橙子,我们使用else
语句打印一条不同的消息。
需要注意的是,break
语句只能用于循环语句中,不能用于其他语句中。如果在没有循环的情况下使用break
语句,将会引发SyntaxError
异常。
continue关键字
continue
是Python
中的一个关键字,用于在循环中跳过当前迭代并继续执行下一次迭代。当continue
语句被执行时,循环将跳过当前迭代,并立即开始下一次迭代。continue
语句通常与条件语句一起使用,以便在满足某些条件时跳过当前迭代。
以下是一个使用continue语句的例子:
# 打印1到10之间的奇数
for i in range(1, 11):
if i % 2 == 0:
continue
print(i)
在这个例子中,我们使用for循环遍历1到10之间的整数,并使用if语句检查当前整数是否为偶数。如果当前整数为偶数,我们使用continue语句跳过当前迭代并开始下一次迭代。如果当前整数为奇数,我们使用print语句打印当前整数。