python基礎之條件判斷

開始

在前面分享過其他基礎了,今天分享下python的條件判斷。

在實際工作中,條件判斷是必不可少的,用來協助工作。

常用的比如說判斷年齡,根據年齡輸出不同內容,在python中,用if語句實現,舉例:

age =20
if age >=18:
    print("你的年齡是",age)
    print('成年')

python有獨有的縮進規則,按照規則,如果 if 語句判斷是 True,就把縮進的兩行 print 語句執行了,否則,什麼也不執行。

也可以添加一個 else 語句,如果  if  判斷是 False ,不執行 if 的內容,而是執行 else  的內容。

age =12
if age >=18:
    print('你的年齡是',age)
    print('成年')
else:
    print('你的年齡是',age)
    print('青少年')

注意:else後面不要忘記寫冒號:

python中還可以用 elif 做更詳細的判斷,舉例:

age =5
if age >=18:
    print('你的年齡是',age)
    print('成年')
elif age >=6:
    print('你的年齡是',age)
    print('青少年')
else:
    print('小孩子')

elif  else if 的縮寫,所以可以有多個 elif ,所以 if  語句可以這樣寫:

age =5
if age >=18:
    print('你的年齡是',age)
    print('成年')
elif age >=6:
    print('你的年齡是',age)
    print('青少年')
elif age >=70:
    print('老人')
else:
    print('小孩子')

但是,if  語句執行有個特點,它從上往下判斷,如果在某個判斷上是 True,把這個判斷對應的語句執行完畢後,會忽略掉剩下的elif  else ,所以這條輸出語句的結果爲什麼是青少年呢?成年人不是也符合條件嗎?

#  測試
age =20
if age >=6:
    print('青少年')
elif age >=18:
    print('成年人')
elif age >=70:
    print('老人')
else:
    print('小孩子')

if 判斷條件可以簡寫,舉例:

if x:
    print('True')

如果 x 是非零數值、非空字符串、非空 list 等,就判斷爲 True ,否則 就是 False.

input()輸入

大家都使用 input() 讀取用戶的輸入,由於可以自己輸入,所以程序會更有意思,舉例:

birth = input('birth: ')
if birth < 2000:
    print('00前')
else:
    print('00後')

輸入一個1982 ,結果報錯了:

Traceback (most recent call last):
  File "D:/z-PycharmProjects/test1/tes9-10/test10-16.py", line 66, in <module>
    if birth < 2000:
TypeError: '<' not supported between instances of 'str' and 'int'

爲什麼呢?因爲input() 返回的數據類型是  strstr 不能直接和整數比較的,不是同一種數據類型就沒法比較,要比較就要把

str  轉換成整數。這裏用  int()  函數來解決這個問題,舉例:

# input 輸入(問題解決)

s = input('birth: ')
birth = int(s)
if birth < 2000:
    print('00前')
else:
    print('00後')

重新運行,輸出正確不報錯,如果輸入abc,又會報錯:

Traceback (most recent call last):
  File "D:/z-PycharmProjects/test1/tes9-10/test10-16.py", line 74, in <module>
    birth = int(s)
ValueError: invalid literal for int() with base 10: 'abc'

這是因爲 int()  函數發現一個字符串不是合法是數字時就會報錯,然後程序結束運行。

結束

OK,今天的分享就到這裏,下次再抽空分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章