Python?if?判斷語(yǔ)句詳解
1. 流程控制
流程控制: 控制程序按照一定的結(jié)構(gòu)進(jìn)行執(zhí)行.
* 1966年計(jì)算機(jī)科學(xué)家 C.Bohm 和 G.Jacopini 在數(shù)學(xué)上證明, 只需要三種控制結(jié)構(gòu)就能寫(xiě)出所有程序.
流程控制三大結(jié)構(gòu):
* 1.順序結(jié)構(gòu)
執(zhí)行順序從上而下依次運(yùn)行(程序最基本的結(jié)構(gòu)).
* 2.分支結(jié)構(gòu)
在運(yùn)行過(guò)程中根據(jù)不同的條件執(zhí)行不同的流程.
* 3.循環(huán)結(jié)構(gòu)
在運(yùn)行過(guò)程中反復(fù)的執(zhí)行某個(gè)子代碼塊.
2. 順序結(jié)構(gòu)
按從上往下依次執(zhí)行的代碼, 幾乎所有的程序都存在順序結(jié)構(gòu).
# 1. 順序結(jié)構(gòu).py print(1) print(2) print(3)
運(yùn)行工具窗口顯示:
1
2
3
3. 分支結(jié)構(gòu)
- 分支結(jié)構(gòu)開(kāi)始部分通常是判斷條件, 接下來(lái)是一個(gè)代碼塊(子句).
- 通過(guò)判斷條件結(jié)果是 True 還是 False 控制程序執(zhí)行方向.2.1 條件
3.1 條件
條件通過(guò)是一個(gè)表達(dá)式.
表達(dá)式: 由數(shù)字, 運(yùn)算符 變量, 等能求得數(shù)值且有意義排列方法組合, 所有的表達(dá)式結(jié)果, 都可以轉(zhuǎn)為布爾值.布爾值的結(jié)果可以分為兩大類:
* 1. 顯式布爾值
(0, 0.0, None, False, 所有為空的數(shù)據(jù)... )
* 2. 隱式布爾值
所有的值都可以當(dāng)成條件去用, 除了上面列舉的值為False, 其它的值都為T(mén)rue.
3.2 代碼塊
代碼塊可以看成是 Python 代碼的一個(gè)執(zhí)行單元, 可以根據(jù)代碼行的縮進(jìn)判斷代碼塊的開(kāi)始和結(jié)束.
代碼塊的三條規(guī)則:
* 1. 縮進(jìn)增加時(shí), 代碼塊開(kāi)始.
* 2. 縮進(jìn)減少為零或與與外面包圍代碼塊對(duì)齊, 代碼塊就結(jié)束了.
* 3. 代碼塊可以包含其他代碼塊.
3.3 if 判斷語(yǔ)句
if 判斷語(yǔ)句對(duì)條件進(jìn)行判斷.
為真: 執(zhí)行代碼塊內(nèi)的語(yǔ)句.
為假: 跳過(guò)代碼塊內(nèi)的語(yǔ)句, 往下運(yùn)行.
結(jié)構(gòu):
* 1. if 關(guān)鍵字.
* 2. 條件+冒號(hào), 所有的控制語(yǔ)句都以冒號(hào)結(jié)尾, 后面緊跟著一個(gè)代碼塊.
* 3. 代碼塊(代碼塊為if的子句).
1. 條件為T(mén)rue
# 2. if 語(yǔ)句(條件為T(mén)rue).py if 1 > 0: print(1) print(2)
運(yùn)行工具窗口顯示:
1
2
2. 條件為False
# 3. if 語(yǔ)句(條件為False).py if 1 < 0: print(1) print(2)
運(yùn)行工具窗口顯示:
2
3.4 else 語(yǔ)句
else 語(yǔ)句不包含條件, 跟隨if語(yǔ)句使用, 當(dāng)if語(yǔ)句判斷的條件為False時(shí), 執(zhí)行else語(yǔ)句的代碼塊.
組合格式:
if 條件:
條件成立執(zhí)行的子代碼塊
else:
條件不成立執(zhí)行的子代碼塊
# 4. else 語(yǔ)句.py # 獲取用戶輸入字符串 pwd = input('請(qǐng)輸入密碼>>>: ') # 判斷用戶輸入 if pwd == '123': print('登錄成功!') else: print('密碼錯(cuò)誤!')
第一次運(yùn)行--> 運(yùn)行工具窗口提示:
請(qǐng)輸入密碼>>>: (123)
登錄成功!
第二次運(yùn)行--> 運(yùn)行工具窗口提示:
請(qǐng)輸入密碼>>>: (456)
密碼錯(cuò)誤!
3.4 if 嵌套
代碼塊中可以包含其它代碼塊.
# 5. if 嵌套.py # 獲取用戶名 username = input('請(qǐng)輸入登入用戶>>>: ') # 判斷用戶名是否正確 if username == 'kid': print('用戶名正確!') # 獲取用戶密碼 password = input('請(qǐng)輸入用戶密碼>>>: ') if password == '123': print('登入成功!') else: print('密碼不正確!') else: print('用戶名不存在!')
運(yùn)行工具窗口提示:
請(qǐng)輸入登入用戶>>>: (kid)
用戶名正確!
請(qǐng)輸入用戶密碼>>>: (123)
登入成功!
3.5 elif 語(yǔ)句
elif 語(yǔ)句在 與 if 語(yǔ)句后面出現(xiàn), 僅在前面的條件為 False 時(shí)才會(huì)檢查 elif 的條件,
當(dāng)條件為 True 時(shí), 執(zhí)行 elif 的代碼塊.組合格式:
if 條件1:
條件1成立之后執(zhí)行的代碼塊.
elif 條件2:
條件1不成立, 條件2成立之后執(zhí)行的子代碼塊.
elif 條件3:
條件1, 2不成立, 條件3成立之后執(zhí)行的子代碼塊.
else:
所有條件都不成立, 執(zhí)行的代碼塊.
* 1. 寫(xiě)一個(gè)程序要求輸入一下分?jǐn)?shù), 對(duì)成績(jī)進(jìn)行評(píng)級(jí).
90 分及以上 優(yōu)秀
80 分及以上 良好
60 分及以上 及格
59 分及以下 不及格
# 5. elif 語(yǔ)句.py # 1.獲取分?jǐn)?shù) branch = input('輸入你的分?jǐn)?shù): ') # 2.判斷分?jǐn)?shù)屬于哪個(gè)級(jí)別 if branch >= '90': print('優(yōu)秀') elif branch >= '80': print('良好') elif branch >= '60': print('及格') else: print('不及格')
運(yùn)行工具窗口提示:
輸入你的分?jǐn)?shù)>>>: (60)
及格
4. 練習(xí)
4.1 猜數(shù)字游戲1
1. 定義一個(gè)數(shù)字
2. 提示用戶輸入數(shù)字
3. 判斷輸入的數(shù)字是否是自己定義的數(shù)字
3.1 猜對(duì)了 打印'猜對(duì)了'.
3.2 猜錯(cuò)了 打印'猜錯(cuò)了'.
int() 函數(shù)將純數(shù)字字符串轉(zhuǎn)為整型. 例: int('1') --> 得到 1.
# 6. 猜數(shù)字游戲1.py # 1. 定義一個(gè)變量存儲(chǔ)需要猜的數(shù)字 num = 26 # 2. 獲取用戶輸入的信息 (字符串) guess_num = input('請(qǐng)輸入你猜的數(shù)字: ') # 3. 判斷用戶輸入的數(shù)字是否正確 if int(guess_num) == num: print('猜對(duì)了!') else: print('猜錯(cuò)了!')
運(yùn)行工具窗口提示:
請(qǐng)輸入你猜的數(shù)字: (26)
猜對(duì)了!
4.2 猜數(shù)字游戲2
1. 定義一個(gè)數(shù)字
2. 提示用戶輸入數(shù)字
3. 判斷輸入的數(shù)字是否是自己定義的數(shù)字
3.1 猜對(duì)了 打印'猜對(duì)了'.
3.2 猜的數(shù)字比實(shí)際值大, 打印'猜大了'.
3.3 猜的數(shù)字比實(shí)際值小, 打印'猜小了'.
# 7. 猜數(shù)字游戲2.py # 1. 定義一個(gè)變量存儲(chǔ)需要猜的數(shù)字 num = 26 # 2. 獲取用戶輸入的信息 (字符串) guess_num = input('請(qǐng)輸入你猜的數(shù)字: ') # 3. 判斷用戶輸入的數(shù)字是否正確 if int(guess_num) > num: print('猜大了!') elif int(guess_num) < num: print('猜小了!') else: print('猜對(duì)了!')
運(yùn)行工具窗口提示:
請(qǐng)輸入你猜的數(shù)字: (26)
猜對(duì)了!
到此這篇關(guān)于Pythonif判斷語(yǔ)句的文章就介紹到這了,更多相關(guān)Pythonif判斷語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python用正則表達(dá)式實(shí)現(xiàn)爬取古詩(shī)文網(wǎng)站信息
這篇文章主要給大家介紹了關(guān)于Python如何利用正則表達(dá)式爬取爬取古詩(shī)文網(wǎng)站信息,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-12-12Matlab常見(jiàn)最優(yōu)化方法的原理和深度分析
這篇文章主要介紹了Matlab常見(jiàn)最優(yōu)化方法的原理和深度分析,matlab只是個(gè)軟件,用來(lái)完成機(jī)械的計(jì)算,而如何安排這些計(jì)算,需要用戶掌握最基本的數(shù)學(xué)概念,需要的朋友可以參考下2023-07-07python可以美化表格數(shù)據(jù)輸出結(jié)果的兩個(gè)工具
這篇文章主要介紹了python可以美化表格數(shù)據(jù)輸出結(jié)果的兩個(gè)工具,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06解決keras+flask模型的重復(fù)調(diào)用出錯(cuò)ValueError: Tensor is n
這篇文章主要介紹了解決keras+flask模型的重復(fù)調(diào)用出錯(cuò)ValueError: Tensor is not an element of this graph問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01pytorch之torch_scatter.scatter_max()用法
這篇文章主要介紹了pytorch之torch_scatter.scatter_max()用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09ubuntu16.04升級(jí)Python3.5到Python3.7的方法步驟
這篇文章主要介紹了ubuntu16.04升級(jí)Python3.5到Python3.7的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08