文章目录
Python基础 P3 分支与循环
基础知识
分支
python的分支结构由if语句来实现,if语句总共有5种语法结构,分别是if、if/else、if/elif、if/elif/else和条件表达式
if语句
判断一个条件:如果条件成立,就执行判断语句里面的内容然后执行外面的内容,如果不成立则跳过直接执行外面的内容
if 判断条件:
里面的内容
外面的内容
举个栗子
a = int(input("请猜测一个数字:"))
if a == 55:
print("你猜对了")
print("游戏结束!")
if/else语句
判断一个条件:如果条件成立,就执行其包含的成立的执行内容;如果条件不成立,就执行不成立的执行内容,最后都会执行外面的内容
if 判断条件:
成立执行内容
else:
不成立执行内容
外面内容
举个栗子
判断两个数是否相等
a = int(input("请输入a:"))
b = int(input("请输入b:"))
if a == b:
print("a与b相同")
else:
print("a与b不相同")
if/elif语句
判断多个条件,如果第一个条件不成立,则继续判断第2个条件,如果第2个条件还不成立,则接着判断第3个条件,成立执行判断条件下的内容,不成立则跳到下一个判断条件,如果都不成立则跳出判断执行外面的程序
if 判断条件1:
成立执行内容1
elif 判断条件2:
成立执行内容2
elif 判断条件3:
成立执行内容3
...
外面内容
举个栗子
a = 0
b = 7
if a:
print(a)
elif b:
print(b)
if/elif/else语句
判断多个条件,如果第一个条件不成立,则继续判断第2个条件,如果第2个条件还不成立,则接着判断第3个条件…如果都不成立,则执行else包含的内容
if 判断条件1:
成立执行内容1
elif 判断条件2:
成立执行内容2
elif 判断条件3:
成立执行内容3
...
else:
不成立执行内容N+1
外面内容
举个栗子
print('''
在大鱼吃小鱼中,查看你现在能吃得鱼的种类
输入1:查询小鱼输入
2:查询大鱼输入
3:查询鲨鱼输入
4:查询鲸鱼
''')
a = int(input("请输入要查询的种类:")
)if a > 4:
print("输入内容超出范围请输入1~4\n")
elif a > 3:
print("可以吃鲨鱼、大鱼和小鱼\n")
elif a > 2:
print("可以吃大鱼和小鱼\n")
elif a > 1:
print("可以吃小鱼\n")
elif a == 1:
print("你好像什么都不能吃哦!\n")
else:
print("输入内容超出范围请输入1~4\n")
条件表达式
条件成立执行内容 if 条件 else 条件不成立执行内容,相当于将一个完整的 if-else 结构整合成一个表达式来使用
程序段0
条件成立时执行的语句 if 条件 else 条件不成立时执行的语句
外面内容
举个栗子
a=3
b=6
small = a if a < b else b
嵌套分支
将if语句嵌套到if语句来实现想要实现的功能
if 判断条件1:
成立执行内容1
if 判断条件2:
成立执行内容2
else:
不成立执行内容2
else:
不成立执行内容1
if 判断条件3:
成立执行内容3
else:
不成立执行内容3
外面内容
举个栗子
a = 15
b = 8
c = 91
if a >= b:
if a >= c:
print(a)
else:
print(c)
else:
if b >= c:
print(b)
else:
print(c)
循环
while循环
只要条件一直成立,那么条件成立循环执行内容一直被执行,如果不成立了则执行条件不成立跳出执行的内容。
while 判断条件:
条件成立循环执行内容
条件不成立跳出执行的内容
举个栗子
break与continue
break可以退出循环;在循环体内,一旦遇到 break 语句,Python会跳出循环体,即便这时候循环体内还有待执行的语句。
举个栗子
while True:
talk = input("请输入内容(STOP结束输入):")
if talk == "STOP":
break
print(talk)
continue结束本次循环进入下一个循环;continue 语句也会跳出循环体,但是,它只是跳出本一轮循环,它还会回到循环体的条件判断位置,然后继续下一轮循环
举个栗子
a = int(input("请输入一个数:"))
print("1~", a, "中5的倍数有")
while a + 1:
a = a - 1
if a % 5 != 0:
continue
if a < 5:
break
print(a)
20
while/else循环
while/else语句与while语句的区别,就是条件不成立时不会直接退出循环而是执行else下方的内容
while 判断条件:
条件成立循环执行内容
else:
条件不成立跳出执行的内容
外面内容
for循环
for循环是根据可迭代对象赋值变量依次执行条件成立的内容,直到可迭代对象执行完跳出for循环执行条件不成立的内容。
for 变量 in 可迭代对象:
条件成立的内容
条件不成立的内容
所谓可迭代对象,就是指那些元素能够被单独提取出来的对象,可以通过range设置可迭代对象。
range() :函数设置可迭代对象,帮助生成一组可迭代对象
- range(stop) - 将生成一个从 0 开始,到 stop(不包含)的整数数列
- range(start, stop) - 将生成一个从 start 开始,到 stop(不包含)的整数数列
- range(start, stop, step) - 将生成一个从 start 开始,到 stop(不包含)结束,步进跨度为 step 的整数数列
举个栗子
1+…+100000
sum = 0
for i in range(1000001):
sum += i
print(sum)
进阶练习
用户验证程序
图形周长与面积
角谷猜想
抛硬币实验
更多内容
其他内容