淺析Python條件語(yǔ)句中的解密邏輯與控制流
前言
Python的條件語(yǔ)句用來(lái)根據(jù)特定的條件決定程序的執(zhí)行流程。它允許程序根據(jù)條件的真假執(zhí)行不同的代碼塊,從而實(shí)現(xiàn)不同情況下的不同操作。條件語(yǔ)句使程序能夠根據(jù)特定條件進(jìn)行邏輯判斷和選擇性的控制,從而增強(qiáng)了程序的靈活性和可擴(kuò)展性。那么今天將由我來(lái)帶大家進(jìn)入 python 條件語(yǔ)句這一奇妙世界。
if 語(yǔ)句
if 條件語(yǔ)句:
執(zhí)行代碼
...
生活中時(shí)間的24小時(shí)制大家應(yīng)該都知道吧,當(dāng)?shù)搅送砩?2點(diǎn)的時(shí)候,小時(shí)表示會(huì)從24變?yōu)?,那么通過(guò)代碼我們?cè)撛趺磳?shí)現(xiàn)呢?
hour = 24
# 這里添加一個(gè)判斷語(yǔ)句:當(dāng) hour 為24時(shí),就重置為0
if hour == 24:
hour = 0
print(f'現(xiàn)在是{hour}時(shí)')
注意了,python 中判斷是不是屬于 if 代碼塊的標(biāo)準(zhǔn)是:是否有相同的縮進(jìn),當(dāng)你沒(méi)有相同的縮進(jìn)的時(shí)候就會(huì)被認(rèn)為不屬于 if 代碼塊。
hour = 24
# 這里添加一個(gè)判斷語(yǔ)句:當(dāng) hour 為24時(shí),就重置為0
if hour == 24:
hour = 0
print('代碼塊1') # 這一行代碼屬于 if 代碼塊
print('代碼塊2') # 這一行代碼不屬于 if 代碼塊,跟 if 語(yǔ)句無(wú)關(guān)
print(f'現(xiàn)在是{hour}時(shí)')
hour = 23
# 這里添加一個(gè)判斷語(yǔ)句:當(dāng) hour 為24時(shí),就重置為0
if hour == 24:
hour = 0
print('代碼塊1') # 這一行代碼屬于 if 代碼塊
print('代碼塊2') # 這一行代碼不屬于 if 代碼塊
print(f'現(xiàn)在是{hour}時(shí)')
if … else …
if 條件1:
代碼塊1
else:
代碼塊2
...
當(dāng) if 的條件成立時(shí)就執(zhí)行 if 中的代碼,并且不執(zhí)行 else 當(dāng)中的代碼;當(dāng) if 的條件不成立時(shí),則執(zhí)行 else 當(dāng)中的代碼塊。也就是說(shuō)只會(huì)執(zhí)行 if 或者 else 中一種代碼。
# 記住了這里的 input 輸入的類(lèi)型是 str 類(lèi)型
age = int(input('請(qǐng)輸入你的年齡'))
if age >= 18:
print('成年')
else:
print('未成年')

多重判斷(if … elif … else…)
if 條件1:
執(zhí)行代碼1
elif 條件2:
執(zhí)行代碼2
elif 條件3:
執(zhí)行代碼3
...
else:
執(zhí)行代碼4
同樣多重判斷也是只會(huì)執(zhí)行其中的一種判斷,如果 if 條件成立,就執(zhí)行 if 中的代碼,并且不會(huì)執(zhí)行 elif 和 else 中的代碼;如果 if 條件不成立,elif 條件成立,則執(zhí)行 elif 當(dāng)中的代碼塊,并且不會(huì)執(zhí)行 else 當(dāng)中的代碼;如果 if 和 elif 的條件都不成立,則執(zhí)行 else 中的代碼。
# 根據(jù)輸入的年齡判斷你處于那個(gè)年齡階段
age = int(input('請(qǐng)輸入你的年齡'))
if age < 18:
print('青少年')
elif (age >= 18) and (age < 30):
print('青年')
elif (age >= 30) and (age < 60):
print('中年')
else:
print('老年')

if 嵌套
if 條件1:
執(zhí)行語(yǔ)句1
if 條件2:
執(zhí)行語(yǔ)句2
elif 條件3:
執(zhí)行語(yǔ)句3
else:
執(zhí)行語(yǔ)句4
elif 條件4:
執(zhí)行語(yǔ)句5
else:
執(zhí)行語(yǔ)句6
在判斷中可以再嵌套判斷,以此來(lái)達(dá)到多次判斷的目的,使數(shù)據(jù)更加準(zhǔn)確。
# 假設(shè)去某公司招聘
degree = 1 # 1代表本科及以上的學(xué)歷
ability1 = 1 # 具有能力1
ability2 = 0
if degree == 1:
if (ability1 == 1) and (ability2 == 1):
print('擔(dān)任職務(wù)1')
else:
print('擔(dān)任職務(wù)2')
else:
print('對(duì)不起,您并未達(dá)到我們的學(xué)歷要求')
猜數(shù)字游戲
這里我們使用上面學(xué)習(xí)到的條件語(yǔ)句來(lái)簡(jiǎn)單的完成一個(gè)猜數(shù)字游戲。
猜數(shù)字游戲基本流程:
1.使用 random 模塊下的randint 方法生成一個(gè)隨機(jī)數(shù)。
2.玩家猜數(shù)字
3.判斷玩家猜的數(shù)字與生成的數(shù)字的大小關(guān)系
# 猜數(shù)字游戲
import random # 導(dǎo)入 random 模塊
num = random.randint(0,100) # 使用random 模塊下的 randint 方法生成隨機(jī)數(shù)
while 1: # 因?yàn)椴豢赡芤淮尉筒轮?,所以我們將猜?shù)字放入循環(huán)中,
# 這里知道就想好了,我們后面再介紹 while 循環(huán)
guess = int(input('請(qǐng)輸入你要猜的數(shù)字'))
if guess > num:
print('猜大了')
elif guess < num:
print('猜小了')
else:
print(f'猜對(duì)了,數(shù)字是{num}')
break # break 的作用是跳出 while 循環(huán)
三目運(yùn)算符
使用三目運(yùn)算符可以簡(jiǎn)化代碼,特別是在一些簡(jiǎn)單的條件判斷和賦值操作中。
值1 if 條件 else 值2
三目運(yùn)算符的執(zhí)行順序:先判斷 if 條件是否成立,如果成立,那么該三目運(yùn)算符的結(jié)構(gòu)就是值1,如果不成立,三目運(yùn)算符的結(jié)果就是值2。
# c為a 和 b 中的較大值
a = int(input('a = '))
b = int(input('b = '))
c = a if a > b else b
print('c = %d' % c)
但需要注意,過(guò)度使用三目運(yùn)算符可能會(huì)導(dǎo)致代碼難以理解,因此應(yīng)該適度使用。
到此這篇關(guān)于淺析Python條件語(yǔ)句中的解密邏輯與控制流的文章就介紹到這了,更多相關(guān)Python條件語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python爬蟲(chóng)模擬登錄帶驗(yàn)證碼網(wǎng)站
這篇文章主要介紹了Python爬蟲(chóng)模擬登錄帶驗(yàn)證碼網(wǎng)站的相關(guān)資料,需要的朋友可以參考下2016-01-01
Python第三方庫(kù)face_recognition在windows上的安裝過(guò)程
今天為大家介紹下face recognition在Windows系統(tǒng)上安裝與使用,但在Windows平臺(tái)上face recognition性能會(huì)有所下降2019-05-05
python數(shù)據(jù)分析之用sklearn預(yù)測(cè)糖尿病
這篇文章主要介紹了python數(shù)據(jù)分析之用sklearn預(yù)測(cè)糖尿病,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python數(shù)據(jù)分析的小伙伴們有很好地幫助,需要的朋友可以參考下2021-04-04
Python使用tarfile模塊實(shí)現(xiàn)免費(fèi)壓縮解壓
Python自帶的tarfile模塊可以方便讀取tar歸檔文件,厲害的是可以處理使用gzip和bz2壓縮歸檔文件tar.gz和tar.bz2,這篇文章主要介紹了Python使用tarfile模塊實(shí)現(xiàn)免費(fèi)壓縮解壓,需要的朋友可以參考下2024-03-03
使用Python Flask構(gòu)建輕量級(jí)靈活的Web應(yīng)用實(shí)例探究
Flask是一個(gè)流行的Python Web框架,以其輕量級(jí)、靈活和易學(xué)的特性受到開(kāi)發(fā)者的喜愛(ài),本文將深入探討Flask框架的各個(gè)方面,通過(guò)詳實(shí)的示例代碼,幫助大家更全面地了解和掌握這一強(qiáng)大的工具,2024-01-01
Python如何批量處理經(jīng)緯度數(shù)據(jù)并生成位置信息
這篇文章主要介紹了Python如何批量處理經(jīng)緯度數(shù)據(jù)并生成位置信息問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08

