1、方法一:
if 条件1:
代码段1
if 条件2:
代码段2
if 条件3:
代码段3
score = 90
if score >= 90:
print("优秀")
if 80 <= score < 90:
print("良好")
if 60<= score <80:
print("及格")
缺点:执行效率低,每个条件都要判断一次。
例题:如果num是偶数就打印偶数,如果num是3的倍数就打印3的倍数,如果num是5 的倍数就打印5的倍数
2、方法二:使用elif对应的多分支结构
if 条件1:
代码段1
elif 条件2:
代码段2
elif 条件3:
代码段3
else:
代码段n
从上往下判断,找到条件成立以后跳出循环
score = 50
if 90<=score <= 90:
print("优秀")
elif 80 <= score < 90:
print("良好")
elif 70<= score <80:
print("中等")
elif 60<= score <70:
print("及格")
elif 0<= score<60:
print("不及格")
else:
print("输入分数错误")
考虑代码执行效率问题可以把大概率发生的情况写在前面
if 嵌套使用
num = 20
if num % 2 == 0:
print("偶数")
if num % 4 == 0:
print("4的倍数")
else:
print("奇数")
for 变量 in 序列:
循环体
说明:for 关键字,固定写法
变量 :自定义变量名
in : 关键字,固定写法
序列:必须是容器型数据类型 列如:字符串,列表,字典,元祖,集合,range, 迭代器,生成器。
循环体:结构上:循环体和for 保持一个缩进的一条或者多条语句
逻辑上:就是需要重复执行的语句.
想要控制循环次数,只需要控制序列中的数字
for i in range(5):
print("好好学习")
结果:
好好学习
好好学习
好好学习
好好学习
好好学习
注意:range()里面的循环次数左闭又开
for x in "asd":
print("hello word")
结果:
hello word
hello word
hello word
字符串长度为3,因此可以打印3次
作用:创建等差数列。
for i in range(5):
print(i)
结果:
0
1
2
3
4
for i in range(1,5):
print(i)
结果:
1
2
3
4
for i in range(1,10,2):
print(i)
结果:
1
3
5
7
9
for i in range(9,0,-2):
print(i)
结果:
9
7
5
3
1
使用for循环求和
sum = 0
for i in range(1,101):
sum +=i
print(sum)
结果:
5050
sum = 0
list = [10,1.23,"abc",True,20,"man",]
for i in list:
if type(i) == int or type(i) == float:
sum += i
print(sum)
结果:
31.23
使用whlie求和
sum = 0
num = 100
while num >=1:
sum += num
num -=1
print(sum)
结果:
5050
count = 0
score = [60,80,26,45,98,100,50,59,46,73,46,55,80]
for i in score:
if i <=60 :
count += 1
print(count)
while 条件语句:
循环体(需要重复执行的代码)
执行过程:判断循环条件是否为True ,如果为True,就执行循环体,否则就循环结束。
控制次数的方式:保证条件一开始是True,经历指引次数循环后,条件由True变为False ; 不能让条件一直是True,否则进入死循环
如果循环次数确定选择for循环,否则选择while
whlie循环:
pw = "123456"
value = None
while value != pw:
value = input("请输入密码")
因篇幅问题不能全部显示,请点此查看更多更全内容