在python中的循环有两个一个是for,一个是while,这两个循环有什么区别呢?
for循环是限制循环的次数,通过range方法或者是通过列表/元组限制循环的次数。
而while循环则是通过条件去限制,满足这个条件时将不再循环。
举个简单的例子来说:
for i in range(0,10):
这句话的意思是,循环10次,但是这个10次呢是从0~9而不是从1~10哦,也就相当于是i遍历了一个从0到9的列表,range函数里后面的那个数字是不包含的。
i = 0
while i<10:
i += 1
这里用while的话就得这么写,多了两行代码,这段代码的意思是,定义一个变量i,当i小于10的时候就一直循环,每次循环i都会+1,直到i=10的时候就不会再循环了。
下面我们分别用for和while来写一个99乘法表
for循环:
#让i在1~9循环 for i in range(1, 10): #让j在1~i+1循环,这里不会超过9因为最大是等于9,i+1=10,所以j最大也是9 for j in range(1, i+1): #格式化打印乘法表 print('{}x{}={}\t'.format(j, i, i*j), end='') #每次完成i的循环进行换行 print() while循环:
while i <= 9: j = 1 #当j小于i时进行循环 while j <= i: #格式化输出乘法表 print("%d*%d=%d\t"%(j,i,j * i),end="") #j进行递增但是不会超过i的值 j += 1 #每次完成i的循环进行换行 print("") #每次完成i的循环i进行递增但不会超过9 i += 1 两种写法都可以完成99乘法表,这里就可以看出for和while的区别啦,一个是通过条件,而一个是通过区间去限制循环次数。