Python條件語(yǔ)句介紹及舉例詳解
Python 條件語(yǔ)句介紹
條件語(yǔ)句是編程中的基本控制結(jié)構(gòu),允許程序根據(jù)特定條件執(zhí)行不同的代碼塊。Python 中的條件語(yǔ)句包括 if、 elif(else if 的簡(jiǎn)寫)和 else 子句。條件語(yǔ)句使程序能夠做出決策,根據(jù)不同情況執(zhí)行不同的操作,大大增強(qiáng)了程序的靈活性和智能性。
在使用條件語(yǔ)句時(shí),需要注意以下幾點(diǎn):
- Python使用縮進(jìn)來(lái)標(biāo)識(shí)代碼塊,確??s進(jìn)一致且正確
- 條件表達(dá)式后必須有冒號(hào)(:)
- 可以使用邏輯運(yùn)算符(and, or, not)組合多個(gè)條件
- 復(fù)雜的條件邏輯可以使用嵌套條件語(yǔ)句或拆分為多個(gè)簡(jiǎn)單條件
本文主要介紹以下幾種條件語(yǔ)句:
- if結(jié)構(gòu):當(dāng)條件為真時(shí)執(zhí)行特定代碼塊
- if…else結(jié)構(gòu):根據(jù)條件的真假執(zhí)行不同的代碼塊
- if…elif…else結(jié)構(gòu):按順序檢查多個(gè)條件,并執(zhí)行第一個(gè)為真的條件對(duì)應(yīng)的代碼塊
- 嵌套條件語(yǔ)句:在條件語(yǔ)句內(nèi)部包含其他條件語(yǔ)句
- 條件表達(dá)式(三元運(yùn)算符):簡(jiǎn)潔地表達(dá)條件邏輯
if結(jié)構(gòu)
if結(jié)構(gòu)語(yǔ)法如下:
語(yǔ)句組是包含一條或多條語(yǔ)句的python語(yǔ)句,條件表達(dá)式之后是一個(gè)冒號(hào):,語(yǔ)句組中的語(yǔ)句要在同一縮進(jìn)級(jí)別。
if 條件表達(dá)式: 語(yǔ)句組
如果條件表達(dá)式的結(jié)果為True,則執(zhí)行if語(yǔ)句塊中的代碼;如果條件表達(dá)式的結(jié)果為False,則跳過(guò)if語(yǔ)句塊。
實(shí)例
例1:簡(jiǎn)單的if語(yǔ)句
# 檢查一個(gè)數(shù)是否為正數(shù) num = 10 if num > 0: print("這是一個(gè)正數(shù)")
運(yùn)行結(jié)果:
這是一個(gè)正數(shù)
例2:if語(yǔ)句與邏輯運(yùn)算符結(jié)合
# 檢查一個(gè)人是否滿足參加某活動(dòng)的條件 age = 25 is_student = True if age >= 18 and is_student: print("您滿足參加活動(dòng)的條件")
運(yùn)行結(jié)果:
您滿足參加活動(dòng)的條件
if…else結(jié)構(gòu)
if…else結(jié)構(gòu)允許我們?cè)跅l件不滿足時(shí)執(zhí)行另一組語(yǔ)句。語(yǔ)法如下:
if 條件表達(dá)式: 語(yǔ)句組1 # 條件為True時(shí)執(zhí)行 else: 語(yǔ)句組2 # 條件為False時(shí)執(zhí)行
實(shí)例
例1:判斷奇偶數(shù)
# 判斷一個(gè)數(shù)是奇數(shù)還是偶數(shù) num = 15 if num % 2 == 0: print(f"{num}是偶數(shù)") else: print(f"{num}是奇數(shù)")
運(yùn)行結(jié)果:
15是奇數(shù)
例2:登錄驗(yàn)證
# 簡(jiǎn)單的用戶登錄驗(yàn)證 username = "admin" password = "12345" input_username = "admin" input_password = "12345" if username == input_username and password == input_password: print("登錄成功!歡迎回來(lái)。") else: print("用戶名或密碼錯(cuò)誤,請(qǐng)重試。")
運(yùn)行結(jié)果:
登錄成功!歡迎回來(lái)。
if…elif…else結(jié)構(gòu)
if…elif…else結(jié)構(gòu)用于檢查多個(gè)條件。一旦某個(gè)條件滿足,就執(zhí)行對(duì)應(yīng)的代碼塊,然后跳出整個(gè)條件結(jié)構(gòu)。語(yǔ)法如下:
if 條件表達(dá)式1: 語(yǔ)句組1 # 條件1為True時(shí)執(zhí)行 elif 條件表達(dá)式2: 語(yǔ)句組2 # 條件1為False且條件2為True時(shí)執(zhí)行 elif 條件表達(dá)式3: 語(yǔ)句組3 # 條件1和2為False且條件3為True時(shí)執(zhí)行 ... else: 語(yǔ)句組n # 所有條件都為False時(shí)執(zhí)行
實(shí)例
例1:成績(jī)?cè)u(píng)級(jí)
# 根據(jù)分?jǐn)?shù)給出評(píng)級(jí) score = 85 if score >= 90: grade = "A" elif score >= 80: grade = "B" elif score >= 70: grade = "C" elif score >= 60: grade = "D" else: grade = "F" print(f"分?jǐn)?shù)為{score},評(píng)級(jí)為{grade}")
運(yùn)行結(jié)果:
分?jǐn)?shù)為85,評(píng)級(jí)為B
例2:季節(jié)判斷
# 根據(jù)月份判斷季節(jié)(北半球) month = 7 if month in [12, 1, 2]: season = "冬季" elif month in [3, 4, 5]: season = "春季" elif month in [6, 7, 8]: season = "夏季" elif month in [9, 10, 11]: season = "秋季" else: season = "輸入月份有誤" print(f"{month}月是{season}")
運(yùn)行結(jié)果:
7月是夏季
嵌套條件語(yǔ)句
條件語(yǔ)句可以嵌套使用,即在一個(gè)條件語(yǔ)句內(nèi)部再包含其他條件語(yǔ)句。
# 嵌套條件語(yǔ)句示例 - 簡(jiǎn)單計(jì)算器 num1 = 10 num2 = 5 operation = "+" if operation == "+": result = num1 + num2 elif operation == "-": result = num1 - num2 elif operation == "*": result = num1 * num2 elif operation == "/": if num2 == 0: # 嵌套條件語(yǔ)句 print("錯(cuò)誤:除數(shù)不能為零") result = "未定義" else: result = num1 / num2 else: print("不支持的操作") result = "未定義" print(f"{num1} {operation} {num2} = {result}")
運(yùn)行結(jié)果:
10 + 5 = 15
條件表達(dá)式(三元運(yùn)算符)
Python還提供了條件表達(dá)式(也稱為三元運(yùn)算符),這是if-else語(yǔ)句的簡(jiǎn)化版本:
value_if_true if condition else value_if_false
實(shí)例
# 使用條件表達(dá)式判斷大小 a = 10 b = 20 maximum = a if a > b else b print(f"較大的數(shù)是: {maximum}")
運(yùn)行結(jié)果:
較大的數(shù)是: 20
實(shí)際應(yīng)用案例
案例1:簡(jiǎn)單的登錄系統(tǒng)
# 簡(jiǎn)單的登錄系統(tǒng) def login_system(): # 預(yù)設(shè)的用戶信息 users = { "admin": "admin123", "user1": "password1", "user2": "password2" } username = input("請(qǐng)輸入用戶名: ") password = input("請(qǐng)輸入密碼: ") if username in users: if users[username] == password: print(f"歡迎回來(lái),{username}!") else: print("密碼錯(cuò)誤!") else: print("用戶不存在!") register = input("是否要注冊(cè)新用戶?(yes/no): ") if register.lower() == "yes": print("注冊(cè)功能正在開發(fā)中...") else: print("感謝使用,再見!") # 調(diào)用函數(shù) # login_system() # 取消注釋以運(yùn)行交互式登錄系統(tǒng)
案例2:猜數(shù)字游戲
import random def guess_number_game(): # 生成1-100之間的隨機(jī)數(shù) target = random.randint(1, 100) attempts = 0 max_attempts = 7 print("歡迎參加猜數(shù)字游戲!") print(f"我已經(jīng)想好了一個(gè)1-100之間的數(shù)字,你有{max_attempts}次機(jī)會(huì)猜出它。") while attempts < max_attempts: try: guess = int(input("請(qǐng)輸入你的猜測(cè): ")) attempts += 1 if guess < 1 or guess > 100: print("請(qǐng)輸入1-100之間的數(shù)字!") continue if guess < target: print("太小了!") elif guess > target: print("太大了!") else: print(f"恭喜你,猜對(duì)了!答案就是{target}。") print(f"你用了{(lán)attempts}次嘗試。") break if attempts < max_attempts: print(f"你還有{max_attempts - attempts}次機(jī)會(huì)。") except ValueError: print("請(qǐng)輸入有效的數(shù)字!") if attempts == max_attempts and guess != target: print(f"游戲結(jié)束!正確答案是{target}。") # 調(diào)用函數(shù) # guess_number_game() # 取消注釋以運(yùn)行猜數(shù)字游戲
總結(jié)
到此這篇關(guān)于Python條件語(yǔ)句介紹及舉例詳解的文章就介紹到這了,更多相關(guān)Python條件語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python給Excel寫入數(shù)據(jù)的四種方法小結(jié)
本文主要介紹了Python給Excel寫入數(shù)據(jù)的四種方法小結(jié),包含openpyxl庫(kù)、xlsxwriter庫(kù)、pandas庫(kù)和win32com庫(kù),具有一定的參考價(jià)值,感興趣的可以了解一下2025-02-02python @classmethod 的使用場(chǎng)合詳解
這篇文章主要介紹了python @classmethod 的使用場(chǎng)合詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Python實(shí)現(xiàn)帶圖形界面的炸金花游戲
詐金花又叫三張牌,是在全國(guó)廣泛流傳的一種民間多人紙牌游戲,它具有獨(dú)特的比牌規(guī)則。本文將通過(guò)Python語(yǔ)言實(shí)現(xiàn)帶圖形界面的詐金花游戲,需要的可以參考一下2022-12-12C語(yǔ)言中printf()函數(shù)的全面介紹及用法(簡(jiǎn)單易懂)
在C語(yǔ)言中,printf()是常用的輸出函數(shù),包含在頭文件中,它使用格式控制字符串,其中包括格式字符、轉(zhuǎn)義字符和普通字符,格式字符以"%"開頭,文中將用法介紹的非常詳細(xì),需要的朋友可以參考下2024-09-09Python圖像銳化與邊緣檢測(cè)之Sobel與Laplacian算子詳解
圖像銳化和邊緣檢測(cè)主要包括一階微分銳化和二階微分銳化,本文主要講解常見的圖像銳化和邊緣檢測(cè)方法,即Sobel算子和Laplacian算子,感興趣的可以了解一下2022-12-12django admin.py 外鍵,反向查詢的實(shí)例
今天小編就為大家分享一篇django admin.py 外鍵,反向查詢的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07