目錄
- 流程控制
- 一、分支陳述句
- 1.1 if陳述句用法
- 1.2 if陳述句嵌套
- 二、回圈陳述句
- 2.1 while 基本用法
- 2.2 break
- 2.3 continue
- 一、分支陳述句
流程控制
在以前的代碼中,所有的代碼都是交由 Python 忠實地從頭執行到結束,但是這些遠遠不夠,很多時候需要根據不同的情況執行不同的代碼,
如果你想改變這一作業流程,應該怎么做?
就像這樣的情況:你需要程式作出 一些決定,并依據不同的情況去完成不同的事情,例如依據每天時間的不同列印出 '早上好' 'Good Morning' 或 '晚上好' 'Good Evening'?
需要用到流程控制!
python 共提供了 3 種流程控制: if、while、for...in
一、分支陳述句
所謂分支陳述句,就是條件滿足,才會執行某個分支,
if 翻譯成中文就是如果的意思,
在各大編程語言里面,if 陳述句應該是最為著名的陳述句,
if 用來判斷一個條件是否為 True , 如果是 True 執行相應的代碼,如果是 False 執行另外的代碼(else 陳述句,可選),
1.1 if陳述句用法
語法:
if 條件:
#代碼塊1
elif 條件:
#代碼塊2
elif ...
else:
#代碼塊3
說明:
- python 的語法結構與其他語言差別很大,python 完全是靠縮進來組織代碼結構,
if、elif、else代碼行結束的時候要使用: if后面跟的是條件,如果是true就執行代碼塊1,代碼塊1相比if一定要縮進,才能算是if代碼塊中的內容,縮進的時候,建議總是以 4 個空格為單位, 把編輯器或者IDE 工具的tab鍵設定為 4 個空格,- 如果
if后面的條件是False,則會判斷緊接著的elif的條件,如果是True則執行代碼塊2,否則就繼續判斷后面的條件, - 如果前面的所有條件都是
False,則 執行else中的代碼塊 3, elif、else陳述句是可選的,可以只有if, 但是不能只有elif或else- 條件理論上可以是任意型別的,
False、0、[]、{}、()、""、None當做False來用,其余做True來用, 但是在使用的時候最好直接用True 或 False - 一旦有一個代碼塊執行結束后,整個
if陳述句也就運行行結束了,
num = 50
# 把從鍵盤讀取到的字串形式的數字,轉換成整數
guess = int(input("請輸入一個1-100的整數"))
if guess > 50:
print("你輸入的是", guess, "比", num, "大了!")
elif guess == 50:
print("你輸入的是", guess, "恭喜你猜對了!")
else:
print("你輸入的是", guess, "比", num, "小了!")
結果:



1.2 if陳述句嵌套
if 陳述句也可以嵌套,嵌套的時候一定要注意縮進!_
# 下面的代碼從鍵盤輸入三個整數,然后判斷并輸出最大值
num1 = int(input("請輸入第 1 個整數:"))
num2 = int(input("請輸入第 2 個整數:"))
num3 = int(input("請輸入第 3 個整數:"))
if num1 > num2:
if num1 > num3:
print("你輸入的最大值是:" + str(num1)) # str()函式,可以把其他型別資料轉換成字串
else:
print("你輸入的最大值是:" + str(num3))
else:
if num2 > num3:
print("你輸入的最大值是:" + str(num2))
else:
print("你輸入的最大值是:" + str(num3))
python 中沒有 switch 陳述句,因為 switch 能做的, if 都可以做, python 的設計理念就是精簡!有一種方法能做的,絕不會提供第二種方法!
二、回圈陳述句
在編程中還有一個更重要的需求,就是重復的執行一些動作,這個時候就需要用到回圈陳述句,
python 共提供了 2 種回圈陳述句, while 回圈和 for...in 回圈,
while 用來做一些通用性的回圈, 而 for...in 用來迭代物件(串列、元組、集合等)中的內容,
我們今天只學習 while , for...in 待講完資料結構之后再進一步學習,
2.1 while 基本用法
while 回圈語法:
while 條件:
#回圈體
else:
#條件為 False 時執行
說明:
while的條件與if的條件是一樣的,- 執行流程:先判斷
while后的條件,如果是True則開始執行回圈體,執行完畢后,再去判斷 條件,如果True繼續執行回圈體... while中的else是可選的,這和其他語言的很大的區別,其他的語言中while中沒有else, 當while中的條件為False時,開始執行else中陳述句,- 如果提供了
else陳述句,則else陳述句一定執行,除非你是通過break陳述句退出的回圈,
# 輸出 0 - 9
i = 0
while i < 10:
print(i)
i = i + 1
else:
print("else 陳述句:" + str(i))
2.2 break
break 用在回圈中(while 和 for...in 都可以用),用于提前結束整個回圈,
有一點需要注意:如果是 break 結束的回圈,else 陳述句也不會執行,
i = 0
while i < 10:
print(i)
i = i + 1
if i == 6:
break
else:
print("else 陳述句:" + str(i))

2.3 continue
continue 用來提前結束本輪回圈,然后繼續判斷,開始下一輪回圈,
break 陳述句和 continue 陳述句的區別:
? 就像在打游戲回圈賽,break 是徹底退出比賽,洗洗睡覺,continiue 是在打的程序中提前把這個一局比賽結束,然后開始下一局比賽,
# 輸出偶數
i = 0
while i < 10:
i = i + 1
if i % 2 == 1:
continue # 如果是奇數,則結束本輪回圈,本輪后面的 print() 方法不再執行,
print(i)
else:
print("else 陳述句:" + str(i))
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/162023.html
標籤:Python
