Latest web development tutorials

Python While循環語句

Python 編程中while 語句用於循環執行程序,即在某條件下,循環執行某段程序,以處理需要重複處理的相同任務。 其基本形式為:

while 判断条件:
    执行语句……

執行語句可以是單個語句或語句塊。 判斷條件可以是任何表達式,任何非零、或非空(null)的值均為true。

當判斷條件假false時,循環結束。

執行流程圖如下:

python_while_loop

實例:

#!/usr/bin/python

count = 0
while (count < 9):
   print 'The count is:', count
   count = count + 1

print "Good bye!"

運行實例»

以上代碼執行輸出結果:

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!

while 語句時還有另外兩個重要的命令continue,break 來跳過循環,continue 用於跳過該次循環,break 則是用於退出循環,此外"判斷條件"還可以是個常值,表示循環必定成立,具體用法如下:

# continue 和 break 用法

i = 1
while i < 10:   
    i += 1
    if i%2 > 0:     # 非双数时跳过输出
        continue
    print i         # 输出双数2、4、6、8、10

i = 1
while 1:            # 循环条件为1必定成立
    print i         # 输出1~10
    i += 1
    if i > 10:     # 当i大于10时跳出循环
        break
 


無限循環

如果條件判斷語句永遠為true,循環將會無限的執行下去,如下實例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

var = 1
while var == 1 :  # 该条件永远为true,循环将无限执行下去
   num = raw_input("Enter a number  :")
   print "You entered: ", num

print "Good bye!"

以上實例輸出結果:

Enter a number  :20
You entered:  20
Enter a number  :29
You entered:  29
Enter a number  :3
You entered:  3
Enter a number between :Traceback (most recent call last):
  File "test.py", line 5, in <module>
    num = raw_input("Enter a number :")
KeyboardInterrupt

注意:以上的無限循環你可以使用CTRL+C來中斷循環。



循環使用else 語句

在python 中,for … else 表示這樣的意思,for 中的語句和普通的沒有區別,else 中的語句會在循環正常執行完(即for 不是通過break 跳出而中斷的)的情況下執行,while … else 也是一樣。

#!/usr/bin/python

count = 0
while count < 5:
   print count, " is  less than 5"
   count = count + 1
else:
   print count, " is not less than 5"

以上實例輸出結果為:

0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5


簡單語句組

類似if語句的語法,如果你的while循環體中只有一條語句,你可以將該語句與while寫在同一行中, 如下所示:

#!/usr/bin/python

flag = 1

while (flag): print 'Given flag is really true!'

print "Good bye!"

注意:以上的無限循環你可以使用CTRL+C來中斷循環。