在 Python 3.11 中,流程控制包括條件語句(if/else/elif)、循環語句(for/while)和異常處理語句(try/except/finally)。下面分别介紹這些語句的用法,并舉例說明。
### 條件語句
條件語句可以根據條件執行不同的操作。文法格式如下:
if condition:
statement(s)
elif condition:
statement(s)
else:
statement(s)
其中 `condition` 是一個條件表達式,如果滿足該條件表達式,就執行 `statement(s)` 中的語句。如果有多個條件需判斷,可以使用 `elif`,如果都不滿足條件,就執行 `else` 中的語句。
下面是一個例子,判斷一個數是否為正數:
num = float(input("請輸入一個數: "))
if num > 0:
print("這個數是正數")
elif num == 0:
print("這個數是0")
else:
print("這個數是負數")
### 循環語句
循環語句可以重複執行某些語句,直到滿足某個條件才退出循環。Python 中有兩種循環語句:`for` 循環和 `while` 循環。
`for` 循環用于周遊一個序列(如清單、元組、字元串等),文法格式如下:
for var in sequence:
statement(s)
其中 `var` 表示變量名,`sequence` 表示要周遊的序列。每次疊代中,`var` 會被指派為序列中的一個元素,然後執行 `statement(s)` 中的語句。
下面是一個例子,計算一個清單中所有元素的和:
mylist = [1, 2, 3, 4, 5]
sum = 0
for num in mylist:
sum += num
print("清單中所有元素的和為: ", sum)
`while` 循環用于在滿足條件的情況下重複執行一段代碼,直到條件不再滿足為止。文法格式如下:
while condition:
statement(s)
其中 `condition` 是一個條件表達式,如果滿足條件表達式,就執行 `statement` 中的語句。
下面是一個例子,列印出所有小于 10 的自然數:
num = 0
while num < 10:
print(num)
num += 1
### 異常處理語句
Python 中的異常處理語句用于捕獲程式運作時發生的異常,并進行相應的處理。異常處理語句包括 `try`、`except` 和 `finally` 三部分,文法格式如下:
try:
statement(s)
except ExceptionType as e:
statement(s)
finally:
statement(s)
try:
statement(s)
except ExceptionType1 as e:
statement(s)
except ExceptionType2 as e:
statement(s)
finally:
statement(s)
其中 `try` 語句塊中包含可能引發異常的語句,如果其中有異常抛出,就會跳轉到 `except` 語句塊中執行相應的代碼。`finally` 語句塊中的代碼無論是否發生異常都會執行,通常用于做清理工作(如關閉檔案)。
如果有多種異常需要處理,可以使用多個 `except` 語句塊來捕獲不同的異常類型。
下面是一個例子,讀取一個檔案中的内容,并進行異常處理:
try:
with open('test.txt', 'r') as f:
print(f.read())
except FileNotFoundError:
print("檔案不存在")
except Exception as e:
print("出現異常: ", e)
finally:
print("執行完畢")
這個例子中,首先嘗試打開一個名為 `test.txt` 的檔案,在 `try` 語句塊中讀取檔案内容。如果檔案不存在,就會抛出 `FileNotFoundError` 異常,這時程式會跳轉到 `except` 語句塊中執行相應的代碼。如果發生了其他異常,就會跳轉到 `except` 語句塊中的 `Exception` 捕獲所有的異常。無論是否發生異常,`finally` 語句塊中的代碼都會執行。
總結一下,Python 3.11 中的流程控制包括條件語句、循環語句和異常處理語句,這些語句能讓程式根據需要執行不同的操作,并能夠處理程式運作時發生的異常,進而提高程式的可靠性和穩定性。