Python分支和循环
程序员文章站
2022-04-06 15:16:31
...
day03 分支和循环
一 顺序结构
按照代码的顺序,从上到下依次执行。
二 选择(分支)结构
适用场景:涉及选择问题时候就需要使用分支结构。
1 单分支语句
格式:
if 条件:
条件成立时执行的代码(一行或多行)
# 需求:是否吃过晚饭,吃过进班学习
# 需求:顾客购买桃子过程
# 1询问桃价格, 2 确定购买重量 3 判定客户是否能购买成功
2 双分支语句
# 格式
if 条件:
条件满足执行的代码
else:
条件不满足执行的代码
# 需求:是否吃过晚饭,吃过加班
ans = input("您吃晚饭了吗?(yes/no)")
if ans == "yes":
print("加班")
else:
print("先去吃个饭")
# 判定一个人是否能够进入网吧
age = int(input("先说你今年多大了?"))
if age>= 18:
print("快乐玩耍去吧")
else:
print("小朋友回家写作业去吧")
3 多分支语句
# 格式
if 条件1:
条件1满足执行的代码
elif 条件2:
前面条件不成立,条件2满足执行的代码
elif 条件3:
前面条件不成立,条件3满足执行的代码
elif 条件4:
前面条件不成立,条件4满足执行的代码
...
else: (可选)
以上条件均不满足执行的代码
# 实现登录和注册以及退出
"""
1 登录
2 注册
3 退出
"""
print("""
1 登录
2 注册
3 退出
""")
choice = input("请输入你要选择的功能编号:")
if choice == "1":
print("欢迎登录,请输入用户名和密码")
elif choice == '2':
print("欢迎进入注册界面")
elif choice =='3':
print("即将退出游戏")
else:
print("输入有误!")
# 一个多分支语句和多个单分支语句区别?
前者多个分支之间有联系,只要前面有满足条件的分支,后续分支不再判定
后者多个分支之间没有任何关系,每个分支独立存在,相互不影响
练习:石头剪刀布
4 分支嵌套
# 格式
if 条件1:
if 条件2:
pass
else:
pass
else:
pass
# 练习:乘火车
"""
1.1 检查是否有票
2 检查行李:刀
2.1没有进站
2.2 提示不能进站原因
1.2没票退出
"""
has_ticket = input("请出示车票:(yes/no)")
if has_ticket == "yes":
has_knife = input("请说明是否有刀?(yes/no)")
if has_knife == "yes":
print("不能携带危险物")
else:
print("进站")
else:
print("请先去买票")
2 三元表达式
简化代码的一种形式
格式: 变量 = 条件成立返回的值 if 条件 else 条件不成立返回的值
#用户输入两个值,输出较大值
num1 = int(input("num1:"))
num2 = int(input("num2:"))
if num1 > num2:
print(num1)
else:
print(num2)
max_num = num1 if num1 > num2 else num2
print(max_num)
二 循环
1 循环引入
场景:每天锻炼:在操场跑步~
# 第一天
print("跑一圈")
# 第二天
print("跑一圈")
print("跑一圈")
# 第5天
print("跑一圈")
print("跑一圈")
print("跑一圈")
print("跑一圈")
print("跑一圈")
2 循环使用
(1 )while 循环
# 格式
while 条件:
重复执行的代码(一行或多行代码)
#如果是计数问题,一般情况需要定义一个计数器
# 优化之前代码
i = 0 # 记录跑的圈数
while i < 5:
print("跑一圈")
i += 1
练习1:输出1-10十个数字
练习2:输出1-10的和
(2)死循环
while True:
重复执行的代码(一行或多行代码)
(3)循环中断关键字
- break:结束一个循环,执行循环后的代码
- continue:结束本次循环(循环体中continue后代码不再执行),执行下一次循环
# 执行10次后退出程序
i = 0
while True:
if i == 10:
break
print(i)
i += 1
# 跳过第10次后继续执行程序
i = 0
while True:
i += 1
if i == 10:
continue
print(i)
# 练习:当前还剩10张票,当剩3张时,不再卖票。
i = 10 # 票
while True:
if i ==3:
break
print("卖出了第",i,"张票")
i -= 1
# 练习:当前还剩10张票,第五张票不卖,其他票卖光为止。
i = 11 # 票
while i>1:
i -= 1
if i == 5:
continue
print("卖出了第",i,"张票")
上一篇: 荣耀手表S1怎么开启跑步锻炼模式?
下一篇: 练习2-4 温度转换