Python知識(shí)分享網(wǎng) - 專(zhuān)業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
Python if條件分支結(jié)構(gòu)
匿名網(wǎng)友發(fā)布于:2023-09-11 14:58:15
(侵權(quán)舉報(bào))

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ù)重新輸入密碼。

 

Python ?if條件分支結(jié)構(gòu) 圖1

 

布爾類(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)算符

Python  if條件分支結(jié)構(gòu) 圖1

 

比較運(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}")

 

 

 

轉(zhuǎn)載自: