python中循环有两种,分别是for循环和while循环,循环可以将序列的数据进行迭代处理:
for循环
for循环依次把list、tuple或字符串中的每个元素迭代出来,例如:
names = ["zhangcong", "lisanjiang", "pangzhiguo"] for name in names: print name # 执行结果 zhangcong lisanjiang pangzhiguo
所以for x in … 循环就是把每个元素赋值给变量x,然后执行缩进的语句 。
例:需要计算出1-10
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] sum = 0 for i in numbers: sum += i # sum += i == sum = sum + i 这里只是简写而已 print sum # 执行结果 55
这里列表还可以用range来代替,range()函数可以生成一个整数序列,比如range(5)生成的序列是从0开始小于5的整数::
sum = 0 for i in range(1, 11): sum += i print sum # 执行结果 55 官方是这么解释range的 range(...) range(stop) -> list of integers range(start, stop[, step]) -> list of integers Return a list containing an arithmetic progression of integers. # 返回一个包含一个等差数列的整数列表。 range(i, j) returns [i, i+1, i+2, ..., j-1]; start (!) defaults to 0. When step is given, it specifies the increment (or decrement). For example, range(4) returns [0, 1, 2, 3]. The end point is omitted! These are exactly the valid indices for a list of 4 elements.
while循环
while循环:只要满足条件就不断循环,一般用死循环的时候会用到,比如我们要计算100以内所有奇数之和,可以用while循环实现:
# 在循环内部变量n不断自减,直到变为-1时,不再满足while条件,循环退出 sum = 0 n = 99 while n > 0: sum = sum + n n = n - 2 print sum
break
break:跳出当前循环,循环结束
例如:打印1-100,当i > 50的时候退出循环
i = 1 while True: if i > 50: break print i i += 1 输出结果: 1 2 3 4 5 6 7 8 ... ... 47 48 49
continue
continue:跳出本次循环,进行下一次循环
例如:打印1-10,但是不包含5
for i in range(11): if i == 5: continue print i # 执行结果 1 2 3 4 6 7 8 9 10
时间: 2024-10-10 14:12:35