python循環
Python提供了for循環和while循環(在Python中沒有do..while循環):
循環類型 | 描述 |
---|---|
while 循環 | 在給定的判斷條件為 true 時執行循環體,否則退出循環體。 |
for 循環 | 重復執行語句 |
嵌套循環 | 你可以在while循環體中嵌套for循環 |
循環控制語句
循環控制語句可以更改語句執行的順序。Python支持以下循環控制語句:
控制語句 | 描述 |
---|---|
break 語句 | 在語句塊執行過程中終止循環,並且跳出整個循環 |
continue 語句 | 在語句塊執行過程中終止當前循環,跳出該次循環,執行下一次循環。 |
pass 語句 | pass是空語句,是為了保持程序結構的完整性。 |
Python While 循環語句
Python 編程中 while 語句用於循環執行程序,即在某條件下,循環執行某段程序,以處理需要重復處理的相同任務。其基本形式為:
while 判斷條件:
執行語句……
執行語句可以是單個語句或語句塊。判斷條件可以是任何表達式,任何非零、或非空(null)的值均為true。
當判斷條件假false時,循環結束。
while 語句時還有另外兩個重要的命令 continue,break 來跳過循環,continue 用於跳過該次循環,break 則是用於退出循環,此外"判斷條件"還可以是個常值,表示循環必定成立,具體用法如下:
# continue 和 break 用法
i = 1while i < 10:
i += 1
if i%2 > 0: # 非雙數時跳過輸出
continue
print i # 輸出雙數2、4、6、8、10
i = 1while 1: # 循環條件為1必定成立
print i # 輸出1~10
i += 1
if i > 10: # 當i大於10時跳出循環
break
無限循環
如果條件判斷語句永遠為 true,循環將會無限的執行下去
註意:無限循環你可以使用 CTRL+C 來中斷循環。
循環使用 else 語句
在 python 中,while … else 在循環條件為 false 時執行 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 來中斷循環。
通過序列索引叠代
另外一種執行循環的遍歷方式是通過索引,如下實例:
實例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
fruits = [‘banana‘, ‘apple‘, ‘mango‘]
for index in range(len(fruits)):
print ‘當前水果 :‘, fruits[index]
print "Good bye!"
以上實例輸出結果:
當前水果 : banana
當前水果 : apple
當前水果 : mangoGood bye!
以上實例我們使用了內置函數 len() 和 range(),函數 len() 返回列表的長度,即元素的個數。 range返回一個序列的數。
循環使用 else 語句
在 python 中,for … else 表示這樣的意思,for 中的語句和普通的沒有區別,else 中的語句會在循環正常執行完(即 for 不是通過 break 跳出而中斷的)的情況下執行,while … else 也是一樣。
實例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
for num in range(10,20): # 叠代 10 到 20 之間的數字
for i in range(2,num): # 根據因子叠代
if num%i == 0: # 確定第一個因子
j=num/i # 計算第二個因子
print ‘%d 等於 %d * %d‘ % (num,i,j)
break # 跳出當前循環
else: # 循環的 else 部分
print num, ‘是一個質數‘
以上實例輸出結果:
10 等於 2 * 5
11 是一個質數
12 等於 2 * 6
13 是一個質數
14 等於 2 * 7
15 等於 3 * 5
16 等於 2 * 8
17 是一個質數
18 等於 2 * 9
19 是一個質數
Python 循環嵌套
Python 語言允許在一個循環體裏面嵌入另一個循環。
Python for 循環嵌套語法:
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
statements(s)
Python while 循環嵌套語法:
while expression:
while expression:
statement(s)
statement(s)
你可以在循環體內嵌入其他的循環體,如在while循環中可以嵌入for循環, 反之,你可以在for循環中嵌入while循環。
Python break 語句
Python break語句,就像在C語言中,打破了最小封閉for或while循環。
break語句用來終止循環語句,即循環條件沒有False條件或者序列還沒被完全遞歸完,也會停止執行循環語句。
break語句用在while和for循環中。
如果您使用嵌套循環,break語句將停止執行最深層的循環,並開始執行下一行代碼。
Python continue 語句
Python continue 語句跳出本次循環,而break跳出整個循環。
continue 語句用來告訴Python跳過當前循環的剩余語句,然後繼續進行下一輪循環。
continue語句用在while和for循環中。
Python pass 語句
Python pass是空語句,是為了保持程序結構的完整性。
pass 不做任何事情,一般用做占位語句。
Python 語言 pass 語句語法格式如下:
pass
實例:
#!/usr/bin/python# -*- coding: UTF-8 -*- # 輸出 Python 的每個字母for letter in ‘Python‘:
if letter == ‘h‘:
pass
print ‘這是 pass 塊‘
print ‘當前字母 :‘, letterprint "Good bye!"
以上實例執行結果:
當前字母 : P
當前字母 : y
當前字母 : t這是 pass 塊
當前字母 : h
當前字母 : o
當前字母 : nGood bye!
python循環