Python之循环语句(while和for循环)

为了让计算机能计算成千上万次的重复运算,我们就需要循环语句。

Python中while语句一般形式:

1 while 判断条件:
2     循环体

Gif演示

如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件,如果条件为假,那么循环体不执行,循环终止。

注意:使用时要注意冒号和缩进,另外,在 Python 中没有 do..while 循环。

例子:计算1+2+3+4+...+100

1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 #从1加到100
4 a = 1
5 b = 2
6 while b < 101:
7     a=b+a
8     b=b+1
9 print(a)

结果是:5050

  • 死循环

无限循环在服务器上客户端的实时请求非常有用。

我们可以通过设置条件表达式永远不为 false 来实现无限循环,实例如下:

退出使用:Ctrl+C

1 while True:
2     id = input("输入用户名")
3     print("你输入的用户名为:",id)
  • while循环使用else语句

while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句

 1 #与其它语言else 一般只与if 搭配不同,在Python 中还有个while ...else 语句,while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
 2 count = 0
 3 while count <= 5 :
 4     count += 1
 5     print("Loop",count)
 6 
 7 else:
 8     print("循环正常执行完啦")
 9 print("-----out of while loop ------")
10 输出
11 Loop 1
12 Loop 2
13 Loop 3
14 Loop 4
15 Loop 5
16 Loop 6
17 循环正常执行完啦
18 -----out of while loop ------
19 
20 #如果执行过程中被break啦,就不会执行else的语句啦
21 count = 0
22 while count <= 5 :
23     count += 1
24     if count == 3:break
25     print("Loop",count)
26 
27 else:
28     print("循环正常执行完啦")
29 print("-----out of while loop ------")
30 输出
31 
32 Loop 1
  • 简写

类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:

1 flag = 1
2  
3 while (flag): print ('欢迎访问')
4 print ("Good bye!")

for循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

for循环一般格式,可以没有else部分

1 for <variable> in <sequence>:
2     <statements>
3 else:
4     <statements>

例:计算从0加到100的和

1 sum = 0
2 for x in range(101):#range(101)提供的范围是[0,100]
3     sum = sum + x
4 print(sum)

 

breaker和continue

下面的例子输出1-10,然后输出END

1 n = 1
2 while n <= 100:
3     if n > 10: # 当n = 11时,条件满足,执行break语句
4         break # break语句会结束当前循环
5     print(n)
6     n = n + 1
7 print('END')

下面的例子打印1,3,5,7,9

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

猜你喜欢

转载自www.cnblogs.com/zhangyanlong/p/11307186.html