2016-07-06 53 views

回答

0

與您的示例代碼,最好的辦法是趕上ValueError,然後再試一次:

def get_int(): 
    try: 
     return int(input('Type an integer:')) 
    except ValueError: 
     print("Not an int. Try again.") 
     return get_int() 

的原因是因爲如果用戶輸入一個非整數字符串,然後在您有機會檢查類型之前引發異常,因此isinstance在這裏並不能真正幫助您。

0

一種方式是值鑄造成和處理異常:

try: 
    parsed = int(user_input) 
    print ("int") 

except: 
    print ("not int")