2017-07-24 145 views
0
if input()==int(): 
    print('mission successful!') 
else: 
    print('mission failed!') 

對於上面的代碼問題是,即使我的輸入是整數,也不會導致mission successful如何檢查輸入字符串是否爲整數

我剛開始學習python。

+1

重要的是要知道'input()'不會給你一個整數,而是一個字符串,即使你輸入一個數字。 –

+2

可能重複[如何檢查字符串輸入是否是數字?](https://stackoverflow.com/questions/5424716/how-to-check-if-string-input-is-a-number) –

回答

1

要檢查如果輸入的字符串爲數字,你可以使用這個:

if input().isnumeric(): 
    print('mission successful!') 
else: 
    print('mission failed!') 

在Python中,檢查是否字符串等於號將始終返回False。爲了比較字符串和數字,它有助於將字符串轉換爲數字,或者將數字轉換爲字符串。例如:

>>> "1" == 1 
False 
>>> int("1") == 1 
True 

>>> 1 == "1" 
False 
>>> str(1) == "1" 
True 

如果字符串不能被轉換爲數字同int,一個ValueError將被拋出。你可以這樣捕捉它:

try: 
    int("asdf") 
except ValueError: 
    print("asdf is not an integer") 
+0

第一種方法負值整數或浮點數失敗 –

相關問題