<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Python分支語句,也稱為選擇語句,體現了程式的選擇結構,即對應不同的場景,選擇不同的處理方式。當滿足某個條件的時候,進行對應的操作,不滿足則進行其他的操作。
分支語句可分為單分支、二分支和多分支結構,在所有分支中,只能選擇其中一條路徑,根據分支條件成立與否決定是否執行。由於只能選擇一條路徑執行,所以應當充分考慮分支語句的條件的設立規則。下面由幾個範例來說明分支語句的用法。
單分支結構是最簡單的一種選擇結構,語法結構如下:
if 條件表示式: 語句塊
當條件表示式成立的時候,執行語句塊,不成立則不執行。例如:使用者輸入兩個數,比較其大小,輸出小的一個。
num_a = int(input('please input a number:')) num_b = int(input('please input another number:')) if num_a > num_b: num_a, num_b = num_b, num_a #交換兩個數 print("the smaller one is",num_a)
上例運用單分支結構,當數a大於數b的條件成立的時候,將兩者交換,最後輸出較小的數a。分支語句中,僅當條件成立的時候才執行,否則不執行交換,直接順序執行分支語句之後的語句。
二分支結構在單分支結構的基礎上增加了else語句,當if條件不成立時,執行else語句,語法結構如下:
if 條件表示式: 語句塊1 else: 語句塊2
二分支結構是二選一的結構,語句塊1和語句塊2有且只有一個一定會被執行到。
還是上面的例子,用二分支語句可以寫作:
num_a = int(input('please input a number:')) num_b = int(input('please input another number:')) if num_a > num_b: print("the smaller one is",num_b) else: print("the smaller one is",num_a)
再如,根據身份證號碼判斷性別,可以寫作:
id_code = input('請輸入身份證號碼:') number = int(id_code[-2]) if number%2 == 0: print("女性") else: print("男性")
這裡的else隱含條件是number%2 == 0
不成立,即number為奇數,所以也可以將else換做if number%2 == 1
,但是從程式的執行效率上考慮,兩個if語句需要執行兩次判斷,而else語句不需要做判斷,所以效率更高。
多分支結構是二分支結構的擴充套件,即多選一的情況,其中else語句是可選的,當else存在時,有且只有一個分支會被執行到。其語法結構如下:
if 條件表示式1: 語句塊1 elif條件表示式2: 語句塊2 … elif條件表示式n: 語句塊n else: 語句塊n+1
例如讓使用者輸入身高體重,計算其BMI指數。BMI指身體質量指數,是用體重(kg)除以身高(m)的平方得到,有國際通用的衡量標椎:
過輕 | 低於18.5**** |
---|---|
正常 | 18.5-25(不含) |
偏胖 | 25-30(不含) |
肥胖 | 30-35(不含) |
重度肥胖 | 35及以上 |
weight = float(input("請輸入你的體重(Kg):")) height = float(input("請輸入你的身高(m):")) BMI = weight / height ** 2 if BMI < 0: print("輸入錯誤") elif BMI < 18.5 : print("偏瘦") elif BMI < 25 : print("正常") elif BMI < 30 : print("偏胖") elif BMI < 35 : print("肥胖") else: print("重度肥胖")
上例通過計算得到BMI指數,根據其值輸出所對應的“檔位”,因為在設定分支條件時應當注意每個分支條件之間沒有重複區域,才能保證輸出結果為其中一種。
在分支語句中如果要做進一步的條件判斷,就會用到巢狀的分支結構。巢狀也可以有多層,通過縮排來表示其包含關係。
代表性語法結構如下:
if 條件表示式1: … if條件表示式2: 語句塊1 else: 語句塊2 else: 語句塊3
例如上例在做身份證號的性別判斷時,如果要先對輸入的身份證號合法性做基本檢查,例如其位數是不是正確,則需要巢狀分支:
id_code = input('請輸入身份證號碼:') if len(id_code) == 18: number = int(id_code[-2]) if number%2 == 0: print("女性") else: print("男性") else: print("輸入不合法")
到此這篇關於Python分支語句常見的使用方法的文章就介紹到這了,更多相關Python分支語句內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45