循环
1. while循环
while 判断条件:
循环体;
例:
1.输出1-100的偶数和;
i=1;
num=0;
while i < = 100:
if i%2==0:
num+=i;
i+=1;
print(num); <<< 2550
2.输出1-100的奇数和;
i=1;
num=0;
while i < = 100:
if i%2!=0:
num+=i;
i+=1;
print(num); <<<2500
3.请用户输入数字,求和,直到输出0退出;
num=10;
n=0;
while num>0:
n+=num;
num-=1;
print(n); <<<55
4.1-100所有3和5的倍数,遇到3的倍数的值,遇到5的倍数的值;
当while 中的判断条件为false时 执行 while...之后的 else语句
num=1;
while num>=100:
if num//3==0 and num//5==0:
print("打印3和5的倍数:"+str(num));
elif num//3==0:
print("打印3的倍数"+str(num));
elif num//5==0;
print("打印5的倍数"+str(num))
else:
print("你输入的有误");
n+=1;
else:
print("循环结束,判断完毕");
5.range()函数 它会生成有序数列;
range(5): 一个参数 从0开始 到5不包含5;
range()中有三个值
例:
range()两个值
for n in range(5):
n+=1;
print(n); <<< 5
range()三个值:range(5,10,2),其中2表示从5到10中每隔1个数,取值 5,7,9,在for循环中表示3次循环;
for i in range(5,10,2):
print("python")
>>>
你好
你好
你好
6.
用for循环嵌套
例:
for i in range(5):
for j in range(5):
print("您好");
print("好");
>>>
您好您好您好您好您好 好
您好您好您好您好您好 好
您好您好您好您好您好 好
您好您好您好您好您好 好
您好您好您好您好您好 好
打印5颗星
分别在5行显示;
for i in range(5):
for j in range(5):
print("*",end="");
print();
>>>
*****
*****
*****
*****
*****
打印直角三角形
;
for i in range(5):
for j in range(i):
print("*",end="");
print();
在for循环中 range()的理解;
for i in range(5):
在Python中for循环range(5);
range(5)表示 i=0;i<5;
输出九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print("{0} * {1}= {2}".format(j,i,j*i),end="\t");
print();
输出等腰三角形
for i in range(1,9):
for k in range(8,n,-1):
print("",end="");
for j in range(2n-1):
print("*",end="");
print();
打印菱形
for i in range(1,8,2):
print(('*'*i).center(15,' '));
for i in range(5,0,-2):
print(('*'*i).center(15,' '));
求1到100中所有的质数;
num=[];
i=2
for i in range(2,31):
j=2
for j in range(2,i):
if(i%j==0):
break;
else:
num.append(i)
print(num);
请用户输入成绩统计各区间的人数超出0-100重新输入正确询问是否继续
a,b,c,d=0,0,0,0;
while i<6:
score=int(input("请用户输入成绩:{0}".format(i)));
if score>=90 and score<=100:
a+=1;
elif score>=80 and score<=89:
b+=1;
elif score>=60 and score<=79:
c+=1;
elif score>=0 and score<=59:
d+=1;
else:
print("输入错误,请结束录入:");
break;
inp=input("是否继续?(y/n)")
if inp=="n":
break;
i+=1;
print("优秀线{0} 良好线{1} 及格线{2} 不及格{3}".format(a,b,c,d))
统计3个班级中每个班级3个学生的成绩:大于80的人数几个;
count=0;
for i in range(1,4):
print("第{0}个班级的学生成绩".format(i));
for j in range(1,4):
print("第{0}个的学生成绩".format(j));
score=int(input());
if score < 80:
continue;
count+=1;
print("大于80 的学生人数:"+str(count));
break和continue;
break是结束循环体,continue是结束单词循环
while(x++ < 10):
if(x == 3)
break;
printf("%d\r\n", x);
结果是输出 1 2 就退出了整个while循环
但是如果使用continue
while x++ < 10
if x == 3
continue;
printf("%d\r\n", x);
结果是:1 2 4 5 6 7 8 9 10 可见他仅仅是不输出3,因为他结束了本次循环