1. 程式人生 > >python入門(三)判斷語句

python入門(三)判斷語句

邏輯判斷 if lse while

python中的常用判斷語句if....elif....else,while
if
if的用法:

if  + 條件判斷:
     邏輯操作.....

例子:
比如讓你輸入一個數字,來判斷這個數字的大小

#如果這個數字大於80
    if 90>80:
        print "great"

如果輸入的數字大於80,那麽輸出great

else的用法:
條件不成立
例子:


#如果這個數字大於80
if 70>80:
    print ("great")
#如果不大於80
else:
    print ("it‘s wrong")

我們輸入一個數字,如果大於80,那麽輸出就是great,如果小於80,那麽就是wrong

elif的用法:
多個判斷條件
例子:


#如果這個數字大於80
        if 77>80:
            print ("great")
#如果這個數字大於60
        elif 77>60:
             print ("yes")
        else:
            print ("it‘s wrong")

當我輸入一個數字,比如輸入90,那麽打印的結果就是great,如果輸入77,那麽打印的結果就是yes,當我輸入50,打印的結果就是it‘wrong

以上為正常的判斷和輸入,但是當我需要自己輸入的時候呢?
a=input("please input a number:" )


這是要我們輸入的一個字符串,我們需要把這個字符串強制轉換成整數類型,需要用的int
前面說過,整數類型int,字符串str,浮點數floa

a=input("please input a number:" )
        if int(a)>80:
            print ("great")
        elif int(a)>60:
             print ("yes")
        else:
             print ("it‘s wrong")

問題1:
input輸入的是一個字符串,比如輸入的有空格,空格不是整數
那麽我們需要判斷是否輸入的有沒有空格,用strip()函數

a=input("please input a number:" )
    if a.strip():
            if int(a)>80:
                print ("great")
            elif int(a)>60:
                 print ("yes")
            else:
                print ("it‘s wrong")
    else:
        print("不允許輸入空格")

這時候輸入空格的話就會打印 ‘不允許輸入空格’
問題2
當我輸入一串英文呢?那麽我們繼續加入一個判斷,來判斷是不是一個數字用函數.isdigit()

  1. 判斷是不是數字isdigit()
  2. 判斷是不是字母和數字isalnum()
  3. 判斷是不是字母isalpha()
  4. 判斷是不是空格isspace()
  5. 判斷是不是小寫/大寫islower()/isupper()
    a=input("please input a number:" )
    if a.strip():
    if a.isdigit():
    if int(a)>80:
    print ("great")
    elif int(a)>60:
    print ("yes")
    else:
    print ("it‘s wrong")
    else:
    print("這不是一個數字")
    else:
    print ("不允許輸入空格")

while循環
用法:

while 條件:                             1
    邏輯判斷if...else..               2

執行順序1→2→1→2。。。。。直到while條件不成立
比如

a=1
while a<10:
    print ("{0}".format(a)
    a +=1

那麽運行的結果就是,a=1,當a<10,打印a,然後a+1,回到循環(這時候a等於上一輪的a+1) ,是否滿足條件a<10,然後打印當前“a”,然後“a”+1,繼續回循環。。。。。

1
2
3
4
5
6
7
8
9

註意,當while的條件判斷為while True:,或者while 1:的時候這個循環是一個死循環,因為不管怎麽執行邏輯判斷,條件都顯示為正確
while 1:比while True:執行速度快,機器的底層代碼就是0和1,True還需要進行轉換

python入門(三)判斷語句