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