在Python 3中调用str()将整数转换为字符串的奇怪之处



为什么这会给我一个错误?

>>> variable = str(21)
Traceback (most recent call last):
  File "<pyshell#101>", line 1, in <module>
    variable = str(21)
TypeError: 'str' object is not callable

这段代码本身不会给你一个错误。例如,我刚刚试了一下:

~ $ python3.2
>>> variable = str(21)
>>> variable
'21'

你在代码的某个地方定义了str =,掩盖了str的内置定义。去掉它,你的代码就可以正常工作了。

因为您可能通过调用自己的变量str来覆盖str函数。

最新更新