Python零基础入门(三):掌握流程控制与条件判断

1. 引言:编程中的决策与控制

在之前的《Python零基础入门(二):深入理解Python数据类型与操作-优快云博客》掌握了常见的数据类型,并学习了如何对这些数据进行操作。而在实际编程中,程序往往需要根据不同的情况来执行不同的代码,这就需要使用流程控制语句。

流程控制让我们可以根据条件判断程序的执行路径,或者让程序反复执行某些任务。通过合理使用流程控制语句,程序可以像人类一样做出“决策”,更智能地处理不同情况。

2. 条件判断:根据条件做出决策

2.1 if 语句

if 语句是最常见的条件判断语句,用来检查一个条件是否成立。如果条件为真,程序就执行某段代码;如果条件为假,程序就跳过这一段代码。

示例:判断输入的数字是正数、负数还是零

我们可以编写一个程序,要求用户输入一个数字,然后判断这个数字是正数、负数还是零。

num = int(input("请输入一个数字:"))
if num > 0:
    print("这是一个正数")
elif num < 0:
    print("这是一个负数")
else:
    print("这是零")

解释

  • num = int(input("请输入一个数字:")):这行代码提示用户输入一个数字,并将输入的字符串转换为整数。
  • if num > 0::判断用户输入的数字是否大于0。如果大于0,执行下一行代码 print("这是一个正数")
  • elif num < 0::如果数字不是正数,就判断它是否小于0。如果小于0,执行下一行代码 print("这是一个负数")
  • else::如果数字既不大于0也不小于0,那么它就是0,执行 print("这是零")

这样,我们就可以根据不同的输入条件来做出决策。

2.2 else 和 elif

else elif 是对 if 语句的扩展,帮助我们处理多种情况。当我们需要检查多个条件时,可以使用 elif 来增加额外的判断,而 else 用来处理所有其他不符合条件的情况。


3. 循环语句:反复执行任务

3.1 for 循环

for 循环用于遍历一个可迭代对象(如列表、字符串或数字范围)。它的作用是让程序依次对每个元素执行某个操作。

示例:输出从1到10的数字

我们可以使用 for 循环来输出从1到10的数字,代码如下:

for i in range(1, 11):
    print(i)

解释

  • range(1, 11):这是一个内置函数,生成从1到10的数字。注意,range(1, 11) 生成的数字包括1,但不包括11。
  • for i in range(1, 11)::这个 for 循环会遍历从1到10的数字,并把每个数字赋值给变量 i
  • print(i):打印当前数字。

当我们运行这个程序时,会依次输出1到10的数字。

3.2 while 循环

while 循环是另一种常用的循环方式,它会一直执行指定的代码块,直到指定的条件不成立时才停止。

示例:计算一个数字的阶乘

阶乘是指一个正整数和所有小于它的正整数的乘积。例如,5的阶乘是 5! = 5 * 4 * 3 * 2 * 1 = 120

下面是一个计算数字阶乘的程序:

num = int(input("请输入一个正整数:"))
result = 1
while num > 0:
    result *= num
    num -= 1
print("阶乘结果:", result)

解释

  • num = int(input("请输入一个正整数:")):这行代码提示用户输入一个正整数,并将其转换为整数。
  • result = 1:初始化 result 为1,用于存储阶乘的结果。
  • while num > 0::只要 num 大于0,就继续执行循环。
  • result *= num:将 result 乘以当前的 num,并把结果赋值给 result
  • num -= 1:把 num 减1,直到它变为0,停止循环。
  • print("阶乘结果:", result):输出计算结果。

这段代码将计算并输出用户输入数字的阶乘。

4. 循环控制:跳出或跳过循环

4.1 break 语句

break 语句用于提前终止循环。当满足某个条件时,程序会立即跳出循环,不再执行后续的代码。

示例:通过数字猜测游戏,演示如何使用 break 结束循环

假设我们做一个简单的数字猜测游戏,用户输入一个数字,程序判断是否正确。如果猜对了,就退出循环。

while True:
    guess = int(input("猜一个1到10之间的数字:"))
    if guess == 5:
        print("恭喜你,猜对了!")
        break  # 猜对了,退出循环
    else:
        print("再试一次")

解释

  • while True::这是一个无限循环,程序会一直让用户输入数字,直到猜对为止。
  • if guess == 5::判断用户输入的数字是否为5。如果是,就打印“恭喜你,猜对了!”并退出循环。
  • break:一旦猜对,break 会终止循环,程序结束。
4.2 continue 语句

continue 语句用于跳过当前循环的剩余部分,直接进入下一次循环。

示例:跳过偶数,只打印奇数

我们可以使用 continue 来跳过偶数,只打印奇数:

for i in range(1, 11):
    if i % 2 == 0:
        continue  # 如果是偶数,跳过此次循环
    print(i)

解释

  • if i % 2 == 0::判断当前数字是否为偶数。
  • continue:如果是偶数,跳过当前循环,进入下一次循环,打印下一个奇数。

5. 嵌套条件判断与循环

有时,我们需要将 if 条件判断和循环语句结合起来,处理更复杂的情况。例如,我们可以在循环中使用 if 判断每个元素是否符合条件,并执行不同的操作。

示例: for 循环检查多个数字是偶数还是奇数

numbers = [1, 2, 3, 4, 5, 6]
for num in numbers:
    if num % 2 == 0:
        print(f"{num} 是偶数")
    else:
        print(f"{num} 是奇数")

解释

  • 这个程序遍历 numbers 列表中的每个数字,通过 if 判断每个数字是偶数还是奇数,并打印相应的结果。

6. 实践与练习:让知识更深入

练习1:判断一个数字是否为偶数或奇数

让我们编写一个简单的程序,输入一个数字,判断它是偶数还是奇数。

num = int(input("请输入一个数字:"))
if num % 2 == 0:
    print("这是偶数")
else:
    print("这是奇数")

练习2:用 for 循环打印九九乘法表

通过循环输出九九乘法表,帮助理解嵌套循环的使用。

for i in range(1, 10):
    for j in range(1, i + 1):
        print(f"{i} x {j} = {i * j}", end="\t")
    print()

7. 总结

本篇文章讲解了条件判断和循环语句,帮助我们根据不同的输入或条件来控制程序的执行。掌握这些流程控制语句后,你可以编写更灵活和智能的程序。

  • 条件判断ifelifelse)帮助程序根据不同的条件做出不同的决策。
  • 循环语句forwhile)让程序反复执行相同的任务,避免重复代码。
  • 控制语句breakcontinue)让我们更灵活地控制循环的执行。

多做练习,结合实际问题来使用条件判断和循环,你会发现它们在编程中的巨大作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值