微信公衆號:碼農充電站pro
我的主頁:https://codeshellme.github.iohtml
Talk is cheap, show me the code.
—— Linus Torvaldspython
目錄git
控制流
用來控制程序的處理流程,即當程序知足或不知足
某一條件時,讓程序去作哪些事情。github
控制流語句使得咱們能夠處理豐富的代碼邏輯。shell
基本的控制流語句有三種,分別是:微信
if
語句用於判斷一個條件,當條件爲True
時,執行一段代碼,當條件爲False
時,執行另外一段代碼。code
if
語句有三種結構:htm
分支內要執行的語句,須要有縮進
,每一個條件
後邊要有冒號:
,以下:blog
# 沒有分支 if 條件: # 條件爲True 時要執行的語句 ... # 一個分支 if 條件: # 條件爲True 時要執行的語句 ... else: # 條件爲False 時要執行的語句 ... # 多個分支 if 條件1: # 條件1 爲True 時要執行的語句 ... elif 條件2: # 條件2 爲True 時要執行的語句 ... elif 條件3: # 條件3 爲True 時要執行的語句 ... else: # 條件1,條件2,條件3 都爲False 時要執行的語句 ...
多分支語句時,若是有多個條件都爲True
,則只會執行第一個條件爲True
內的語句,其它條件爲True
內的語句不會執行。教程
好比上面的多分支if 語句中:
條件1
,條件2
,條件3
都爲True
,則只會執行條件1
內的語句。條件1
爲False
,條件2
,條件3
都爲True
,則只會執行條件2
內的語句。if
語句後邊的條件
,可帶括號()
,可不帶括號()
,以下是帶括號的:
# 帶括號的if 語句 if (條件): ...
if 語句嵌套
if
語句中還能夠嵌套if
語句,下面是一個簡單的if
嵌套語句結構:
if 條件1: ... if 條件2: ... ...
示例,根據分數
判斷等級
:
scores = ... # 分數 grade = None # 等級 if scores > 90: # 分數大於90 時,等級爲優秀 grade = '優秀' elif scores > 80: # 分數大於80 時,等級爲良好 grade = '良好' elif scores > 60: # 分數大於60 時,等級爲及格 grade = '及格' else: # 不然,等級爲不及格 grade = '不及格'
Python 中的for
循環不一樣於C/C++
,Java
中的for
循環。
Python 中的for
語句其實是for...in
語句,一般用於遍歷一個序列
,序列後邊要有一個冒號:
。
說明:
一個字符串
,一個列表
,都是一個序列。
字符串
和列表
,在後續章節會詳細介紹。
遍歷列表:
# l 是一個列表 l = [1, 2, 3] # 遍歷列表 for i in l: # i 是列表中的每一個元素 print(i)
其輸出結果爲:
1 2 3
遍歷字符串:
# s 是一個字符串 s = 'abc' # 遍歷字符串中的字符 for i in s: print(i)
其輸出結果爲:
a b c
for 循環中的else
for
循環中也能夠有一個else
語句,在for
循環執行完以後,會在最後執行else
語句:
# l 是一個列表 l = [1, 2, 3] # 遍歷列表 for i in l: # i 是列表中的每一個元素 print(i) else: print('for 循環執行結束')
其輸出結果以下:
1 2 3 for 循環執行結束
當 for
循環的執行過程當中遇到break
語句,else
語句則不會被執行:
l = [1, 2, 3] for i in l: print(i) if i == 3: # 當i 爲3 時,會執行 break break else: print('for 循環執行結束')
該段代碼在執行到i
爲3
時,會執行到break
語句,break
語句會跳出for
循環,else
語句也是for
循環的一部分,因此,else
中的語句不會被執行到。
其輸出結果以下:
1 2 3
注意:
break
語句會在下面介紹到。
下面是while
循環語句的語法格式,條件
後邊有一個冒號:
,以下:
while 條件: # 條件爲True 時要執行的語句 ... ...
while
語句的含義是,當條件
爲True
時,會一直執行while
循環中的代碼,直到某一時刻條件
變爲了False
。
每次在執行while
循環體內的語句塊以前,都會判斷條件
,若是條件
爲True
,則執行循環體,若是條件
爲False
,則退出循環體。
示例:
i = 3 while i > 0: print(i) i = i - 1
這段代碼的輸出結果爲:
3 2 1
當i
減到0
時,i > 0
爲False
,此時while
循環結束。
while 循環中else
while
循環也與for
循環同樣,能夠有else
語句:
while 條件: ... else: ...
無限循環
無限循環
是一個特殊的循環,其條件
永遠爲真
,以下就是一個無限循環:
while True: ... ...
只要無限循環中的語句沒有主動退出
,或者遇到異常
,則無限循環中的語句將永遠執行下去。
continue
語句用在for
循環和while
循環中,當遇到continue
語句時,會跳到循環的開頭執行。
示例:
i = 3 while i > 0: i = i - 1 if i == 2: print('跳到循環開頭') continue print(i)
其輸出以下:
跳到循環開頭 1 0
當i == 2
時,執行完print('跳到循環開頭')
後,執行continue
語句,而後跳到循環開頭執行,因此,i == 2
時,沒有執行print(i)
。
break
語句也是用在for
循環和while
循環中,當遇到break
語句時,會跳出循環體。
示例:
i = 3 while i > 0: i = i - 1 if i == 0: print('跳出循環') break print(i)
其輸出結果以下:
2 1 跳出循環
當i == 0
時,執行完print('跳出循環')
後,執行break
語句,而後跳出循環,因此,i == 0
時,沒有執行print(i)
。
pass
語句常常在控制流中用到,pass
語句是一個空語句
,不執行任何東西,只起到一個佔位的做用。
示例:
i = ... if i == 0: # 作任何事情 pass else: print('i 不爲 0')
(完。)
推薦閱讀:
Python 簡明教程 --- 2,第一個Python 程序
Python 簡明教程 --- 4,Python 變量與基本數據類型
Python 簡明教程 --- 5,Python 表達式與運算符
歡迎關注做者公衆號,獲取更多技術乾貨。