2013-10-01 62 views
-2

我正在使用qpython3。班級沒有改變int()。以下是qpython3控制檯中的示例代碼。Python 3如何將類'str'更改爲類'int'?

>>> a = "8" 
>>> a 
'8' 
>>> type(a) 
<class 'str'> 
>>> int(a) 
8 
>>> type(a) 
<class 'str'> 

該類仍然是字符串。繼分配的int變量作爲對比:

>>> a = 8 
>>> a 
8 
>>> type(a) 
<class 'int'> 

這裏的問題是,如果從input()服用int字符,進一步數學運算和邏輯比較被禁止。

回答

6

你沒有分配給它,試試這個

a = int(a) 

當你說INT(一)它返回一個整數值,而interpeter打印出來,但你必須把它分配給

>>> a = "3" 
>>> type(a) 
<class 'str'> 
>>> a = int(a) 
>>> a 
3 
>>> type(a) 
<class 'int'> 
+0

int([number | string [,base]]) 將數字或字符串轉換爲整數。 誤導python文檔。它返回一個int對象而不是轉換它。 – Weiyan

0

在python中,字符串和整數是不可變的。即調用它的函數不會改變它的結構。

這意味着你必須返回任何函數返回到另一個變量。

>>> a = '8' 
>>> print(type(a)) 
<class 'str'> 
>>> a = int(a) # a = int('8') 
>>> print(type(a)) 
<class 'int'> 

請注意我們如何用整數覆蓋變量a

相關問題