課后練習題隨筆(一)


練習題一:

  實現isOdd()函數,參數為整數,如果整數為奇數,返回True,否則返回False。

  函數實現:

  

def isOdd(a):
    if isinstance(a,int):#判斷輸入的數是否為整數
        if a%2!=0:
            return True
        else:
            return False
    else:
        return False

if __name__=='__main__':
    while True:
        a=eval(input())
        print(isOdd(a))

 

   調試結果:

  

   難點突破:

  本題難點在於判斷輸入的數據是否為整數,明白如何判斷后本題會簡單許多。判斷輸入的數據是否為整數有兩種方法,其一:a=int(input()),這種方法在輸入時就會判斷是否為整數,若是,會運行下一語句;若不是,則會報錯(ValueError)。其二便是該題我使用的方法isinstance(),這個方法除了判斷是否為整數外,還可以判斷是否為字符等。

 

練習題二

  實現isNum()函數,參數為一個字符串,如果這個字符串屬於整數、浮點數或復數的表示,則返回True,否則返回False。

  函數實現:

  

def isNum(a):
    try:
        a=eval(a)
        return True
    except:
        return False

if __name__=='__main__':
    while True:
        print(isNum(input()))

  調試結果:

  

 

練習題三

  實現multi()函數,參數個數不限,返回所有參數的乘積。

  函數實現:

 

def multi(a):
    num=1
    for i in a:
        num*=i
    print(num)

if __name__=='__main__':
    a=eval(input())
    multi(a)

  調試結果:

  

 

 

 

練習題四

  實現isPrime()函數,參數為整數,要有異常處理。如果整數是質數,返回True,否則返回False。

  函數實現:

def isPrime(a):
    for i in range(2,a):
        if a%i==0:
            return False
    return True                


if __name__=='__main__':
    while True:
        try:
            print("請輸入整數:",end="")
            a=int(input())
            print(isPrime(a))
        except ValueError:
            print("輸入的數據不是整數,請重新輸入:")

  調試結果:

  

 

 

   難點突破:

  本題難點在於異常處理,使用a=int(input()),在輸入階段系統捕獲異常狀態ValueError。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM