在Python編程中,if-else語句是一種基本的控制結(jié)構(gòu),用于根據(jù)條件執(zhí)行不同的代碼塊。
一、基本的if語句
語法結(jié)構(gòu)
if語句的基本語法如下:
ifcondition:
#如果條件為真,執(zhí)行這里的代碼塊
其中condition是一個表達式,這個表達式會被求值為布爾值(True或者False)。如果condition為True,則if語句后面縮進的代碼塊將會被執(zhí)行;如果condition為False,則代碼塊將被跳過。
示例
例如,判斷一個數(shù)是否為正數(shù):
num=5
ifnum>0:
print(f"{num}是正數(shù)")
在這個示例中,我們定義了一個變量num并賦值為5。然后,if語句中的條件num>0被求值為True,所以print語句(在if語句的代碼塊內(nèi))將會被執(zhí)行,輸出“5是正數(shù)”。
二、if-else語句
語法結(jié)構(gòu)
當我們想要在條件為假時執(zhí)行另外一段代碼時,可以使用if-else語句。其語法如下:
ifcondition:
#如果條件為真,執(zhí)行這里的代碼塊
else:
#如果條件為假,執(zhí)行這里的代碼塊
示例
例如,判斷一個數(shù)是正數(shù)還是非正數(shù):
num=-3
ifnum>0:
print(f"{num}是正數(shù)")
else:
print(f"{num}不是正數(shù)")
在這個示例中,因為num=-3,if語句中的條件num>0被求值為False,所以else語句后面的代碼塊將會被執(zhí)行,輸出“-3不是正數(shù)”。
三、if-elif-else語句
語法結(jié)構(gòu)
當有多個條件需要判斷時,可以使用if-elif-else語句。其語法如下:
ifcondition1:
#如果條件1為真,執(zhí)行這里的代碼塊
elifcondition2:
#如果條件1為假且條件2為真,執(zhí)行這里的代碼塊
elifcondition3:
#如果條件1和條件2為假且條件3為真,執(zhí)行這里的代碼塊
else:
#如果以上所有條件都為假,執(zhí)行這里的代碼塊
示例
例如,根據(jù)一個數(shù)的正負性和是否為零進行分類:
num=0
ifnum>0:
print(f"{num}是正數(shù)")
elifnum<0:
print(f"{num}是負數(shù)")
else:
print(f"{num}是零")
在這個示例中,因為num=0,if語句中的條件num>0被求值為False,elif語句中的條件num<0也被求值為False,所以else語句后面的代碼塊將會被執(zhí)行,輸出“0是零”。
在使用if-else語句(包括if-elif-else語句)時,需要注意以下幾點:
條件表達式可以是比較表達式(如a>b)、邏輯表達式(如aandb或者aorb)或者包含函數(shù)調(diào)用的表達式(只要函數(shù)返回值可以被轉(zhuǎn)換為布爾值)等。
代碼塊的縮進非常重要,Python通過縮進來區(qū)分不同的代碼塊。通常使用4個空格作為縮進單位,不過只要保持整個腳本的縮進風格一致即可。