蟒中有两种循环语句,一是虽然语句,一是对语句。下面我们分别给予介绍。
for循环语句,主要用于list or tuple中把其中的元素打印出来。例如:
>>> L = ['a','b','c']
>>> for x in L:
print(x)
a
b
c
我们可以看出来的x在......语句的作用在于依次把L中的元素带入x中,然后执行缩进行语句。假如我们计算1-10的和,使用x中的...... ..语句可以如下设计:
sum = 0
>>> L = [1,2,3,4,5,6,7,8,9,10]
>>> for x in L:
sum = x + sum
>>> print(sum)
55
但是如果我们如果计算1-100的和,应该怎么办?使用列表把所有的数字都列举出来总是不方便的,幸亏python提供了range()函数,可以生成从0开始的整数数列,然后再使用列表()函数,转换为列表。
>>> sum = 0
>>> for x in list(range(101)):
sum = x + sum
>>> print(sum)
5050
while循环语句,while循环语句为,只要符合而后的条件,就一直执行其后的缩进语句,条件不符合时,跳出循环。我们同样计算1-100之和,而语句如下设计。
>>> sum = 0
>>> n = 0
>>> while n <= 100:
sum = n + sum
n = n + 1
>>> print(sum)
5050
我们可以看出,两种循环语句都可以实现我的需求。
python还提供了结束循环的语句break和跳出当此循环的语句continue语句,在满足一定条件下结束循环或者跳出循环,这两种语句通常结合条件判断语句使用。
>>> n = 1
>>> while n <= 100:
print(n)
n = n + 1
上面的语句可以打印出1-100,如果想提前结束可以结合条件语句和突破语句实现。
>>> n = 1
>>> while n <= 100:
if n > 10: # 当n = 11时,条件满足,执行break语句
break # break 语句会结束当前循环
print(n)
n = n + 1
执行以上代码,我们发现,打印到10时程序将推出,既循环结束。
继续语句可结合条件语句跳出本次循环,并开始下一次循环。例如如果我们只想打印1-10之间的奇数,可如下设计
>>> n = 0
>>> while n < 10:
n = n + 1
if n % 2 == 0: #如果n是偶数,执行continue语句
continue # continue 语句直接继续下一次循环
print(n)
我们可以看到,打印的是1-10间的奇数部分。
最后,我们比较一些break和continue间的相同和不同,我们可以通过上面的例子知道,break直接结束循环语句,不再执行循环语句,而continue语句,只是结束或者说跳出本次循环,进而继续下一次循环。