Python 7天快速入門(mén)完整視頻教程:https://www.bilibili.com/video/BV1o84y1Z7J1
Python if條件分支結(jié)構(gòu)
如果 Python程序的多行代碼之間沒(méi)有任何流程控制,則程序總是從上向下依次執(zhí)行。
但是現(xiàn)實(shí)生活中,我經(jīng)常遇到一些需要做判斷的業(yè)務(wù)流程。比如去銀行ATM取款,如果密碼輸入正確,則可以取款。如果密碼輸入錯(cuò)誤,則提示讓用戶(hù)重新輸入密碼。
布爾類(lèi)型和比較運(yùn)算符
布爾( bool)表達(dá)現(xiàn)實(shí)生活中的邏輯,即真和假,True表示真,F(xiàn)alse表示假。
實(shí)例:
# 布爾類(lèi)型定義
b1 = True
b2 = False
print(f"b1={b1},類(lèi)型是{type(b1)}")
print(f"b2={b2},類(lèi)型是{type(b2)}")
輸出結(jié)果:
b1=True,類(lèi)型是<class 'bool'>
b2=False,類(lèi)型是<class 'bool'>
比較運(yùn)算符
比較運(yùn)算符的返回結(jié)果,是布爾類(lèi)型。
實(shí)例:
# 比較運(yùn)算符
n1 = 10
n2 = 12
print(f"n1==n2的結(jié)果是:{n1 == n2}")
print(f"n1!=n2的結(jié)果是:{n1 != n2}")
print(f"n1>n2的結(jié)果是:{n1 > n2}")
print(f"n1>=n2的結(jié)果是:{n1 >= n2}")
作業(yè):n1=10 n2=12 打印輸出 n1 < n2 和 n1 <= n2的返回值
if語(yǔ)句語(yǔ)法格式
if語(yǔ)句基本語(yǔ)法格式
if 判斷條件 :
執(zhí)行內(nèi)容...
測(cè)試案例:
age = input("請(qǐng)輸入您的年齡:")
age = int(age)
print(f"我今年{age}歲了")
if age >= 18:
print("已經(jīng)成年了")
print("我要好好學(xué)習(xí),天天向上")
注意點(diǎn):
第一 判斷條件后面要加冒號(hào):
第二 執(zhí)行內(nèi)容前面是四個(gè)空格
第三 判斷條件返回值是布爾類(lèi)型
if else語(yǔ)句語(yǔ)法格式
if 判斷條件 :
? 滿(mǎn)足條件執(zhí)行內(nèi)容...
else :
? 不滿(mǎn)足條件執(zhí)行內(nèi)容
測(cè)試案例:
age = input("請(qǐng)輸入您的年齡:")
age = int(age)
print(f"我今年{age}歲了")
if age >= 18:
print("已經(jīng)成年了")
else:
print("還未成年")
print("我要好好學(xué)習(xí),天天向上")
注意點(diǎn):
第一 else后面要加冒號(hào): 第二 else 執(zhí)行內(nèi)容前面也是四個(gè)空格
作業(yè):實(shí)現(xiàn)程序,提示輸入銀行密碼,正確密碼 123456 。輸入正確則提示 “密碼正確,進(jìn)行下一步操作。"輸入錯(cuò)誤,則提示 “密碼輸入錯(cuò)誤,請(qǐng)重新輸入。"
if elif else語(yǔ)句語(yǔ)法格式
當(dāng)然有多個(gè)條件判斷的時(shí)候,我們可以通過(guò)if elif else來(lái)實(shí)現(xiàn)
if 條件1:
條件1滿(mǎn)足執(zhí)行內(nèi)容
elif 條件2:
條件2滿(mǎn)足執(zhí)行內(nèi)容
elif 條件n:
條件n滿(mǎn)足執(zhí)行內(nèi)容
else
以上條件都不滿(mǎn)足執(zhí)行內(nèi)容
案例:
score = input("請(qǐng)輸入您的語(yǔ)文成績(jī):")
print(f"我的語(yǔ)文成績(jī)是:{score}分")
score = float(score)
if score >= 90:
print("成績(jī)優(yōu)秀")
elif score >= 70:
print("成績(jī)良好")
elif score >= 60:
print("成績(jī)及格")
else:
print("成績(jī)不及格")
print("再接再勵(lì),加油!")
作業(yè):設(shè)計(jì)程序計(jì)算個(gè)稅。用戶(hù)輸入工資,輸出應(yīng)該繳納的個(gè)稅。
1、工資范圍在5000元以下的,不需要繳納個(gè)人所得稅。
2、工資范圍在5001元-8000元的,繳納個(gè)人所得稅稅率為3%。
3、工資范圍在8001元-17000元的,繳納個(gè)人所得稅稅率為10%。
4、工資范圍在17001元-30000元的,繳納個(gè)人所得稅稅率為20%。
5、工資范圍在30001元-40000元的,繳納個(gè)人所得稅稅率為25%。
6、工資范圍在40001元-60000元的,繳納個(gè)人所得稅稅率為30%。
7、工資范圍在60001元-85000元的,繳納個(gè)人所得稅稅率為35%。
8、工資超過(guò)85000元,沒(méi)有上限,繳納個(gè)人所得稅稅率為45%。
if語(yǔ)句的嵌套應(yīng)用
有時(shí)候業(yè)務(wù)上有多維度復(fù)雜條件判斷,我們需要用到if語(yǔ)句的嵌套來(lái)實(shí)現(xiàn)。
舉例:我們?cè)谝恍┯螒蚓W(wǎng)站活動(dòng)充值的時(shí)候,沖100送 20 沖200送50 但是vip用戶(hù)的話(huà),沖100送 30 沖200送70
代碼實(shí)現(xiàn):
vip = False
amount = input("請(qǐng)輸入充值金額:")
amount = int(amount)
if amount == 100:
if vip:
print("總共充值", 100 + 30)
else:
print("總共充值", 100 + 20)
elif amount == 200:
if vip:
print("總共充值", 200 + 70)
else:
print("總共充值", 200 + 50)
作業(yè):猜數(shù)字游戲作業(yè);1到10先隨機(jī)生成一個(gè)數(shù)字。 通過(guò)if嵌套語(yǔ)句,用戶(hù)輸入數(shù)字猜測(cè),猜對(duì)了,則直接提示正確,否則提示大了或者小了,最多猜三次。
提示:通過(guò)random.randint()方法可以生成隨機(jī)數(shù)字;
import random
# 生成1到10的隨機(jī)數(shù)(包括1,10)
num = random.randint(1, 10)
print(f"1到10生成的隨機(jī)數(shù)字是:{num}")