循环
1.if多分支结构
if 多分支结构:if - elif - else
从上往下依次判断语句是否为True,如果为T就执行这个if或者elif对应的代码段,执行完if在判断后面的条件,也不再执行后面的代码段。 else后面的代码段只有在前面的条件都不满足的时候才会执行。
对if分支结构的练习:
height = 1.8
weight = 80
result = weight / (height ** 2)
if 18.4 <= result <= 24.9:
print('正常')
elif result < 18.4:
print('偏轻')
else:
print('偏重')
# 练习:输入成绩,如果输入的
# 成绩在90分以上(含90分)输出A;
# 80分-90分(不含90分)输出B;
# 70分-80分(不含80分)输出C;
# 60分-70分(不含70分)输出D;
# 60分以下输出E。
score = float(input('请输入成绩:'))
if score > 100 or score < 0:
print('分数不合法')
elif score >= 90:
print('A')
elif 80 <= score:
print('B')
elif 70 <= score:
print('C')
elif 60 <= score:
print('D')
else:
print('E')
2.if——嵌套
# 练习:输入一个数,如果输入的数是偶数就打印'偶数', 否则打印奇数并判断个位数是否为1。如果这个数能被4整除,还要打印'4的倍数'
num = int(input('请输入一个数:'))
if num % 2 == 0:
print('偶数:', num)
if num % 4 == 0:
print('4的倍数:', num)
else:
print('奇数是:', num)
if num % 10 == 1:
print('个位数是1:', num)
3.for循环
语法结构:
for 变量 in 序列:
循环体
说明:
for in : --固定写法
变量 – 变量名(自己命名)
序列 – 序列中的数据会被变量从开始依次取值,取一次值就执行一次循环,直至序列中的数据取完,循环结束(序列的元素个数决定)。容器型数据类型的数据,列如:字符串,列表,元组,集合,字典,迭代器,生成器,range,
循环体 – 和for保持一个缩进的一条或者多条语句
message = '萨达是非法撒旦法'
for x in range(10):
print(message)
print('====================================')
for x in '12':
print(message)
print('===')
4.range函数的使用
range函数的流程:
1.range函数:
第一种:
range(N) --产生从0到N-1的数字范围
for x in range(10):
print(x, '#####')
第二种:
range(M,N) --产生M到N-1的数字范围,如(5,10)–从5到9
# 练习:产生数字范围-100~-1并且打印出来
for x in range(-100, 0):
print('a=', x)
第三种:
range(M,N,step) —产生从M开始,每次增加step,一直到N之前
如range(1,10,2) —1,3,5,7,9
# 练习:写程序产生数字:
# -1, -3, -5, -7, -9
for x in range(-1, -10, -2):
print(x)
# 5,4,3,2,1
for x in range(5, 0, -1):
print(x)
# 计算1+2+。。。+100
num = 0
for x in range(1, 101):
num += x
print('num=', num)
# 练习: 求 10 + 20 + 30 +...+ 100 的和
num = 0
for x in range(10, 101, 10):
num += x
print('num=', num)
# 练习:统计1~100中能被3整除的数的个数
# 方法一:
count = 0
for x in range(1, 101):
if x % 3 == 0:
count += 1
print(count)
# 方法二:
count = 0
for x in range(3, 101, 3):
count += 1
print('个数是:', count)
5.while循环
while 条件语句: --一直判断,直到条件语句为F,结束循环体。
代码段(循环体)
流程控制:
# 如何选择:
# 循环次数确定--for;不确定--while
# 练习
x = 1
while x != 0: # x!= '0'
x = int(input("继续输入:")) # x = input('继续输入:')
print('程序退出:')
6.循环关键字
(1).continue(只能出现在,循环体中!),直接结束当次循环,回到判断条件继续判断
for num in range(1, 11):
if num % 3 == 0:
continue
print(num)
(2)# break(只能出现在循环体中!),直接结束整个循环.
while 1:
num = input('请输入一个数字:')
if num == '0':
break
while 循环的执行步骤:
第一步:while True
第二步:重复执行的操作
第三步:添加结束循环的条件
# 练习:使用while循环打印1~10
# while True:
# 打印数字
# 数字加1
# if 数字大于10:
# break
x = 1
while 1:
print(x)
x += 1
if x > 10:
break
# else:
"""
完整的for循环:
for 变量 in 序列:
循环体
else:
代码段
完整的while循环:
while 条件语句:
循环体
else:
代码段
"""
# else的存在不影响原来循环的执行。
# 当循环自然结束,else后的代码会执行。如果循环遇到break结束时,else后的代码不会执行
# 判断一个数是否是一个素数
num = int(input('请输入一个数:'))
for x in range(2, num):
if num % x == 0:
print(num, '不是素数')
break
else:
print(num, '是素数')
含有关键字的循环流程分析:
行。如果循环遇到break结束时,else后的代码不会执行
判断一个数是否是一个素数
num = int(input('请输入一个数:'))
for x in range(2, num):
if num % x == 0:
print(num, '不是素数')
break
else:
print(num, '是素数')
含有关键字的循环流程分析: