Python中TypeError: 'str' object is not callable解决方法

str( )是python自带函数,是python保留的关键字,定义变量时应该避免使用str作为变量名
如果在使用str( )函数之前已经定义过str变量,则会出现TypeError: ‘str’ object is not callable这个报错

另外,代码编辑器在之前执行的代码中已经定义了str变量,但是执行之后全局变量没有被清空,即使在当前代码中没有定义str变量,在使用str( )函数时仍然会提示该错误。这种隐含的错误很容易被忽略,我们重启编辑器就可以解决这个问题

示例:

import urllib.request as ur
 
str='a'
url = "https://www.autohome.com.cn/car/"
req = ur.Request(url)
html1 = ur.urlopen(req, timeout=600).read()
html1 = str(html1)
print(html1)

执行str(html1)会报错TypeError: ‘str’ object is not callable,原因是前面已经定义了str=‘a’
我们把str='a’删掉,重新运行代码,该错误仍然存在
重启编辑器,运行不含有str='a’的代码,成功运行,打印出该网站返回的html信息

猜你喜欢

转载自blog.csdn.net/wolfcsharp/article/details/83416246