python的語句結(jié)構(gòu)你真的了解嗎
一、程序的組織結(jié)構(gòu)
任何簡(jiǎn)單的或者復(fù)雜的算法都可以由順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)這三種基本結(jié)構(gòu)組合而成
二、順序結(jié)構(gòu)
程序從上到下順序地執(zhí)行代碼,中間沒有任何的判斷和跳轉(zhuǎn),直到程序結(jié)束
三、對(duì)象的布爾值
Python一切皆對(duì)象,所有對(duì)象都有一個(gè)布爾值
- 獲取對(duì)象的布爾值
- 使用內(nèi)置函數(shù)bool()
- 以下對(duì)象布爾值為False
print(bool(False)) print(bool(0)) print(bool(0.0)) print(bool(None)) print(bool('')) print(bool("")) print(bool([])) #空列表 print(bool(list())) #空列表 print(bool(())) #空元組 print(bool({})) #空字典 print(bool(dict())) #空字典 print(bool(set())) #空集合 print('------------其他對(duì)象的布爾值均為True-----------------') print(bool(18)) print(bool("0"))
輸出:
False
False
False
False
False
False
False
False
False
False
False
False
------------其他對(duì)象的布爾值均為True-----------------
True
True
四、分支結(jié)構(gòu)
選擇結(jié)構(gòu)
程序根據(jù)判斷條件的布爾值選擇性地執(zhí)行部分代碼
明確的讓計(jì)算機(jī)直到在什么條件下,該去做什么
單分支結(jié)構(gòu)
中文語義:如果…就…
如果下雨,就帶傘
語法結(jié)構(gòu):
if 條件表達(dá)式:
? 條件執(zhí)行體
#判斷余額是否充足 if money >=s: money=money-s print('取款成功,余額為:',money)
輸入100,輸出:
請(qǐng)輸入取款金額:100
取款成功,余額為: 900
輸入1200, 不繼續(xù)執(zhí)行
雙分支結(jié)構(gòu)
中文語義:
如果…不滿足…就…
如果中獎(jiǎng)就領(lǐng)獎(jiǎng),沒中獎(jiǎng)就不領(lǐng)
語法結(jié)構(gòu):
if 條件表達(dá)式:
? 條件執(zhí)行體1
else:
? 條件執(zhí)行體2
#雙分支結(jié)構(gòu)if...else... 二選一執(zhí)行 num=int(input('請(qǐng)輸入一個(gè)整數(shù):')) #條件判斷 if num%2==0: print(num,'是偶數(shù)') else: print(num,'是奇數(shù)')
輸入9,輸出:
請(qǐng)輸入一個(gè)整數(shù):9
9 是奇數(shù)
輸入10,輸出:
請(qǐng)輸入一個(gè)整數(shù):10
10 是偶數(shù)
多分支結(jié)構(gòu)
中文語義
成績(jī)是90以上嗎? 不是
成績(jī)是80到90分之間嗎?不是
成績(jī)是70到80分之間嗎?不是
成績(jī)是60到70分之間嗎?不是
成績(jī)是60分以下嗎?是
語法結(jié)構(gòu):
if 條件表達(dá)式1:
? 條件執(zhí)行體1
elif 條件表達(dá)式2:
? 條件執(zhí)行體2
elif 條件表達(dá)式N:
? 條件執(zhí)行體N
[else:]
? 條件執(zhí)行體N+1
方括號(hào)表示可寫可不寫
代碼示例:
''' 多分支結(jié)構(gòu),多選一執(zhí)行 90-100 A 80-89 B 70-79 C 60-69 D 0 -59 E 小于0或者大于100為非法數(shù)值 ''' score= int(input('請(qǐng)輸入一個(gè)分?jǐn)?shù):')) #判斷 if score >=90 and score <=100: print('A級(jí)') elif score >=80 and score <= 89: print('B級(jí)') elif score >= 70 and score <= 79: print('C級(jí)') elif score >=60 and score <= 69: print('D級(jí)') elif score >=0 and score <=59: print('E級(jí)') else: print('對(duì)不起,成績(jī)有誤,不在成績(jī)的有效范圍內(nèi)')
請(qǐng)輸入一個(gè)分?jǐn)?shù):99
A級(jí)
請(qǐng)輸入一個(gè)分?jǐn)?shù):66
D級(jí)
請(qǐng)輸入一個(gè)分?jǐn)?shù):122
對(duì)不起,成績(jī)有誤,不在成績(jī)的有效范圍內(nèi)
寫法改造
''' 多分支結(jié)構(gòu),多選一執(zhí)行 90-100 A 80-89 B 70-79 C 60-69 D 0 -59 E 小于0或者大于100為非法數(shù)值 ''' score= int(input('請(qǐng)輸入一個(gè)分?jǐn)?shù):')) #判斷 if 90 <=score <=100: print('A級(jí)') elif 80<=score <= 89: print('B級(jí)') elif 70<=score <= 79: print('C級(jí)') elif 60<=score <= 69: print('D級(jí)') elif 0<=score <=59: print('E級(jí)') else: print('對(duì)不起,成績(jī)有誤,不在成績(jī)的有效范圍內(nèi)')
輸出:
請(qǐng)輸入一個(gè)分?jǐn)?shù):100
A級(jí)
嵌套if
語法結(jié)構(gòu):
if 條件表達(dá)式1:
? if 內(nèi)層條件表達(dá)式:
? 內(nèi)層條件執(zhí)行體1
? else:
? 內(nèi)層條件執(zhí)行體2
else:
? 條件執(zhí)行體
代碼示例
''' 會(huì)員 >= 200 8折 >= 100 9折 非會(huì)員 >= 9.5折 不打折 ''' answer= input('您是會(huì)員嗎?y/n') money=float(input('請(qǐng)輸入您的購物金額:')) #外層判斷是否是會(huì)員 if answer=='y': if money>=200: print('打8折,付款金額為:',money*0.8) elif money>=100: print('打9折,付款金額為:',money*0.9) else: print('不打折,付款金額為:',money) #雖然是會(huì)員,但金額太小不打折 else: #非會(huì)員 if money >=200: print('打9.5折,付款金額為:',money*0.95) else: print('不打折,付款金額為:',money)
輸出:
您是會(huì)員嗎?y/ny
請(qǐng)輸入您的購物金額:2000
打8折,付款金額為: 1600.0
您是會(huì)員嗎?y/ny
請(qǐng)輸入您的購物金額:100
打9折,付款金額為: 90.0
五、ass空語句
pass語句
#pass語句,什么都不做,只是一個(gè)占位符,用到需要寫語句的地方 answer = input('您是會(huì)員嗎?y/n') #判斷是否為會(huì)員 if answer=='y': pass else: pass
先占位,后補(bǔ)全
利用對(duì)象的布爾值
age = int(input('請(qǐng)輸入您的年齡:')) if age: #不用判讀,直接利用對(duì)象的布爾值 print(age) else: print('年齡為:',age)
輸出:
請(qǐng)輸入您的年齡:18
18
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
深入了解Python枚舉類型的相關(guān)知識(shí)
這篇文章主要介紹了深入了解Python枚舉類型的相關(guān)知識(shí),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07python 打印直角三角形,等邊三角形,菱形,正方形的代碼
這篇文章主要介紹了python 打印直角三角形,等邊三角形,菱形,正方形的代碼,需要的朋友可以參考下2017-11-11使用Python編寫電腦定時(shí)關(guān)機(jī)小程序
這篇文章主要為大家詳細(xì)介紹了如何使用Python編寫電腦定時(shí)關(guān)機(jī)小程序,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例
這篇文章主要介紹了python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-05-05Python實(shí)現(xiàn)把數(shù)字轉(zhuǎn)換成中文
這篇文章主要介紹了Python實(shí)現(xiàn)把數(shù)字轉(zhuǎn)換成中文,一般用于數(shù)字金額轉(zhuǎn)中文大寫金額,即將阿拉伯?dāng)?shù)字轉(zhuǎn)換為大寫的中文,需要的朋友可以參考下2015-06-06