1、whlie自动迭代(等价于for+if)
while:按照指定规则自动迭代,判断每次迭代结果,直至迭代结果不符合条件则终止
while True:无限循环,当符合条件,则无限循环执行程序,直到程序终止
自动迭代
#例1:自动迭代(5、4、3、2、1、Blastoff)
n=5
while n>0:
print(n)
n=n-1
print('Blastoff')
#例2:对迭代结果进行判断输出(TRUE、True、True、False、False、finish)
n=5
while n>0:
if n>2:
print('True')
elif n>0:
print('False')
n=n-1
print('finish')
#例3:根据要求结果限制迭代次数(5、4、3)
n=5
while n>0:
print(n)
n=n-1
if n<=2:
break
print('finish')
无限循环
while True: #若条件为真,则无限循环直到程序终止(本题为例:可输入多次s,输出多个结果)
try:
s=int(input()):
l=[]
for i in range(s):
l.append(int(input()) #输入s个整数,每次输入的数字添加到列表l中
for j in sorted(set(l)): #set(l)指的是无序不重复列表,sorted是排序
print(j)
except:
break
条件不满足时,自动退出循环
#当n递减为-1时,退出循环:
sum=0
n=10
while n>0:
sum=sum+n
n=n-2
print(sum)
中断循环:break
#n大于零的情况下,当n小于4时,退出循环:
sum=0
n=10
while n>0:
if n<4:
break
sum=sum+n
n=n-2
print(sum)
跳过本次循环,直接开始下一个循环:continue
eg-n小于等于10的情况下,当n为偶数时,执行循环:
n=0
while n<=10:
n=n+1
if n % 2==0:
continue
print(n)
2、for指定循环
相比while,for循环使用更加频繁,也更加灵活;常与if连用,作为基本框架。
#返回一组数列的个数、总和、均值
count=0
sum=0
for i in [1,2,3]:
count=count+1
sum=sum+i
print(count,sum)
print(count,sum,sum/count)
#for循环逻辑演示
word='banana'
count=0
for i in word:
if i == 'a':
count=count+1
print(count)#遍历banana的每一个字符,字符为a时则输出count值即每一个a出现的累计频次
(count)#遍历banana的每一个字符,输出每一个字符所对应的count值
print(count)#遍历每一个字符,输出循环结束后最终的count值即a的总频次
#1-100循环运算:
sum=0
a=list(range(101))--0-100的数列
for x in a:
sum=sum+x
print(sum)--0-100的依次累计值