流程控制

学习Python中的流程控制语句,包括条件判断和循环结构,让程序能够根据不同情况做出不同反应,或重复执行特定任务。

知识点概览

if语句

什么是if语句?

if语句是一种条件判断语句,它允许程序根据条件的真假来执行不同的代码块。在Python中,if语句的基本语法如下:

if 条件表达式:
    # 条件为真时执行的代码
elif 条件表达式2:
    # 条件1为假,条件2为真时执行的代码
else:
    # 所有条件都为假时执行的代码

故事化案例:小明的考试成绩

小明刚考完数学考试,成绩出来后,他想知道自己的成绩等级:

  • 如果成绩大于等于90分,等级为"A"
  • 如果成绩大于等于80分且小于90分,等级为"B"
  • 如果成绩大于等于70分且小于80分,等级为"C"
  • 如果成绩大于等于60分且小于70分,等级为"D"
  • 如果成绩小于60分,等级为"不及格"

我们可以用if语句来帮助小明判断他的成绩等级:

score = 85  # 小明的考试成绩

if score >= 90:
    print("成绩等级:A")
elif score >= 80:
    print("成绩等级:B")
elif score >= 70:
    print("成绩等级:C")
elif score >= 60:
    print("成绩等级:D")
else:
    print("成绩等级:不及格")

运行上面的代码,输出结果为:成绩等级:B

for循环

什么是for循环?

for循环是一种迭代循环,它允许程序遍历序列(如列表、元组、字符串)或其他可迭代对象中的每个元素。在Python中,for循环的基本语法如下:

for 变量 in 可迭代对象:
    # 循环体代码

故事化案例:小明的水果摊

小明在小区里开了一个水果摊,他有一个列表记录了今天卖出的水果和数量:

fruits = ["苹果", "香蕉", "橙子", "葡萄", "西瓜"]
quantities = [15, 20, 10, 8, 5]

小明想打印出每种水果卖出的数量,我们可以用for循环来实现:

for i in range(len(fruits)):
    print(f"今天卖出了{fruits[i]} {quantities[i]}个")

运行上面的代码,输出结果为:

今天卖出了苹果 15个
今天卖出了香蕉 20个
今天卖出了橙子 10个
今天卖出了葡萄 8个
今天卖出了西瓜 5个

while循环

什么是while循环?

while循环是一种条件循环,它会在条件满足时重复执行代码块,直到条件不满足为止。在Python中,while循环的基本语法如下:

while 条件表达式:
    # 循环体代码
    # 通常需要包含改变条件的代码

故事化案例:小明的存钱计划

小明计划存零花钱买一个新手机,手机价格是1000元。他每个月能存100元,我们来计算他需要多少个月才能存够钱:

target = 1000  # 目标金额
current = 0    # 当前存款
month = 0      # 月份

while current < target:
    month += 1
    current += 100
    print(f"第{month}个月,存款金额:{current}元")

print(f"小明需要{month}个月才能存够钱买手机")

运行上面的代码,输出结果为:

第1个月,存款金额:100元
第2个月,存款金额:200元
第3个月,存款金额:300元
第4个月,存款金额:400元
第5个月,存款金额:500元
第6个月,存款金额:600元
第7个月,存款金额:700元
第8个月,存款金额:800元
第9个月,存款金额:900元
第10个月,存款金额:1000元
小明需要10个月才能存够钱买手机

练习题

if语句练习题

1. 编写一个程序,根据用户输入的年龄,判断用户是否可以驾驶汽车(年龄>=18)。

2. 编写一个程序,根据用户输入的三个数字,输出其中最大的数字。

3. 编写一个程序,根据用户输入的年份,判断该年份是否是闰年。

for循环练习题

1. 编写一个程序,计算1到100之间所有偶数的和。

2. 编写一个程序,输出一个列表中所有元素的平方。

3. 编写一个程序,统计一个字符串中某个字符出现的次数。

while循环练习题

1. 编写一个程序,输出1到100之间所有能被3整除的数字。

2. 编写一个程序,计算10的阶乘(10!)。

3. 编写一个程序,模拟猜数字游戏:计算机随机生成一个1到100之间的数字,用户输入猜测的数字,计算机提示"太大"或"太小",直到用户猜对为止。