5.Python 基础 ---循环

python的循环有两种,一种是for...in循环,一种是while循环,一起看一下。

for...in

for...in可以依次把listtuple中的每个元素迭代出来,例如:

>>> names =  ['jack','mike','rose']
    for name in names:
        print(name)
运行结果:#会依次打印names中的每个元素
jack
mike
rose

再举个栗子,我们要计算1-10的整数和:

sum = 0
for x in [1,2,3,4,5,6,7,8,9,10]:
   sum = sum + x
print(sum)

但要让你计算1-100呢,那不是写到死,哎,python这时候给我们提供了一个range()函数,可以生成一个序列数,我们再用list()转换一下就可以啦。用法如下:

>>> list(range(5))
[0,1,2,3,4]
# range(101)就可以生成0-100的整数序列

while循环

只要满足条件就会不断循环,不满足时退出,比如我们要计算0-100内所有的奇数之和:

sum = 0
n = 99
while n>0:
      sum = sum + n
      n = n-2
print(sum)
# 当n为-1时跳出循环,执行print()

break

在循环过程中利用break可以随时退出循环。我们要循环打印1-100的数字,但在50的时候让它停止:

n = 1
while n<=100:
     if n>50:
         break
     print(n)
     n = n + 1
print('结束')

执行代码发现,在打印出1~50之后,紧接着打印了结束,停止循环。

continue

在循环过程中,我们也可以跳过某些条件的循环,依旧是打印1-10,但这次只打印奇数:

n = 0
while n < 10:
    n = n + 1
    if n % 2 == 0: # 如果n是偶数,执行continue语句
        continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行
    print(n)

continue的作用就是提前结束本轮循环,进入下一轮。

小结

break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环,并直接开始下一轮循环。这两个语句通常都必须配合if语句使用
另外还有要注意的一点,这东西不要乱用,很容易造成代码分叉较多,自己也看不懂还容易出错。

你可能感兴趣的:(5.Python 基础 ---循环)