python中while和for的区别总结

时间:2021-12-02 01:00:30

Python中for循环和while循环本质上是没有区别的,但是在实际应用上,针对性不太一样。

while循环适用于未知循环次数的循环,for循环适用于已知循环次数的循环 。

for主要应用在遍历中,比如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
for i in range(10):
 
  print(i)
 
打印结果为:
 
0 1 2 3 4 5 6 7 8 9
 
list1 = [1,2,"a”]
 
for i in list1:
 
  print(i)
 
#打印结果为逐步列表list1中的元素:
 
1
 
2
 
a

而while循环很少进行遍历使用(语句过多,没有for方便),while主要用于判断符合条件下循环,比如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
i = 0
 
while True:
 
  if i<3:
 
    print(i)
 
    i += 1
 
  else
 
    print("i>=3啦!")
 
    break
 
#运行结果:当i叠加到3前,依次打印i的值,当i等于3的时候判断语句不成立,执行else语句,跳出while循环
 
#打印结果:
 
0
 
1
 
2

扩展实例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
while循环应用举例:
#为什么要用循环?循环可以使需要重复的代码只写一遍即可
a=10
#只要条件成立,就去执行条件后的代码块,条件不成立,直接跳过
while a==10:
 #第一种结束while循环的方式,更改循环的条件,让条件不成立
 number=input('请输入数字,输入0结束while循环:')
 #%s 通用占位符
 #如果字符串中只有一个占位符,可以将变量直接写在%之后
 #如果字符串中有两个或者两个以上的占位符,必须写在%之后,添加小括号(),将占位的变量写在小括号内
 print('您输入的数字为%s'%number)
 if number=='0':
  #更改a的值,让其不等于10
  a=20
#第二种结束while循环的方式 使用break关键字结束循环
#True 布尔类型的数据 True(真 可以使用数字1表示)和False(假 可以使用数字0表示)
while True:
 number=input('请输入内容,输入0结束循环:')
 if number=='0':
  #break跳出当前循环,结束while循环
  #break可结束for循环,也可结束while循环,结束离自己最近的循环
  break
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
for循环应用举例(九九乘法表)
#coding:utf-8
#python中的for循环
#for 指定循环次数
#利用for循环 输出99乘法表
#输出范围,包含5,不包含10
#for x in range(5,10):
# print x,
for i in range(1,10):
 for j in range(1,i+1):
  # print ('%s*%s=%s'%(i,j,i*j))
  #\t表示制表,使竖排对齐
   print(' %d*%d=%d'%(j,i,j*i),end="")
  # print j, "*", i, "=", i * j,' ',
 #换行三种方式:方法一 print \ 方法二 print '\n' 法三:'\r'
 print('\r')