Python 分支結構

2021-10-14 04:24:47 字數 2220 閱讀 9441

「當多分支中有多個表示式條件同時滿足時,則每個與之匹配的語句塊都被執行。」這句話是的,例子如下:

grade=

70if grade>=0:

print

('不及格'

)elif grade>=60:

print

('及格'

)

**中明顯「grade=70」既滿足「grade>=0」,又滿足「grade>=60」,但輸出結果為不及格,這是因為只有當if條件語句返回值為false時,才會執行下乙個elif語句。這說明並不是每個與條件匹配的語句都被執行。

elif 是 else if 的縮寫,在多分支選擇結構中,若表示式1為真,則執行語句塊1,為假則進行表示式2的判斷,若表示式2為真,則執行語句塊2…以此類推,如下圖所示:

具體例子如下:

例1.

import math

a,b,c=

eval

(input

("請輸入三角形的三條邊,並以逗號隔開:"))

if a+b>c and a+c>b and b+c>a:

mark=

0if a==b or a==c or b==c:

mark=

1if a==b==c:

print

("等邊"

,end='')

else

:print

("等腰"

,end='')

if math.fabs(a*a+b*b-c*c)

<

0.001

or math.fabs(b*b+a*a-c*c)

<

0.001

or math.fabs(c*c+a*a-b*b)

<

0.001

: mark=

1print

("直角"

,end='')

if mark==0:

print

("一般"

,end='')

else

:print

("邊長不能構成"

,end='')

print

('三角形'

)

執行結果:

例2.

import math

a,b,c=

eval

(input

("請輸入三角形的三條邊,並以逗號隔開:"))

if a+b>c and a+c>b and b+c>a:

mark=

0if a==b or a==c or b==c:

mark=

1if a==b==c:

print

("等邊"

,end='')

else

:print

("等腰"

,end='')

elif math.fabs(a*a+b*b-c*c)

<

0.001

or math.fabs(b*b+a*a-c*c)

<

0.001

or math.fabs(c*c+a*a-b*b)

<

0.001

: mark=

1print

("直角"

,end='')

if mark==0:

print

("一般"

,end='')

else

:print

("邊長不能構成"

,end='')

print

('三角形'

)

執行結果:

對比例 1 和例 2 ,例 2 只將例 1 中判斷是否為直角三角形的「 if 」改為「 elif 」,但例 2 的結果出現了錯誤,這是因為在多分支選擇結構中elif 和 if 的用法的不同。

Python 分支結構

分支結構示例1 pm2.5.ipynb pm input 請輸入pm2.5的值 print pm print type pm eval函式功能 將字串str當成有效的表示式來求值並返回計算結果 pm1 eval pm if pm1 75 print 空氣汙染警報 if pm1 35 print 空氣...

Python分支結構

python的分支結構就是c語言中的判斷語句型別,python簡潔明瞭的 格式能讓你更清醒的認識編寫python 的樂趣,特別是在pycharm中寫 自動補全,自動縮排,都能給你不一樣的程式設計體驗,再也不用擔心乙個語句後面少了個分號,程式報錯找半天找不到的尷尬處境了!if conditon 1 s...

Python分支結構if else elif區別

if 不影響下面條件的判斷 elif 下面的條件不再判斷 即elif語句只會按順序執行第乙個滿足條件的語句 當滿足條件後將不執行後面的 else 處理以上條件之外的情況 如果只想執行其中乙個 塊 用if elif elif elif elif else結構 eg 下面的例子不會輸出not best ...