2013-10-01 36 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

相关问题