啊我真的太迷惑了,这是试图在advprop那个开源项目中使用CIFAR10的时候的报错,但是单纯用resnet18调用验证集就不会有这个问题,为啥啊
这是报错的代码,报错的完整内容就是问题描述里面的那样
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y
参考:
在Python运行过程中遇到了如下错误:
TypeError: ‘list’ object is not callable
list = ['经点', '咸汤', '鱼儿', '骆驼']
tup_1 = (1, 2, 3, 4, 5)
tupToList = list(tup_1)
print(tupToList)
1
2
3
4
5
6
代码运行后出错了,提示是TypeError: ‘list’ object is not callable
Traceback (most recent call last):
File "<pyshell#42>", line 1, in <module>
counterA()
TypeError: 'list' object is not callable
1
2
3
4
callable()是python的内置函数,用来检查对象是否可被调用,可被调用指的是对象能否使用()括号的方法调用,类似于iterable()
在如上代码中,由于变量list和函数list重名了,所以函数在使用list函数时,发现list是一个定义好的列表,而列表是不能被调用的,因此抛出一个类型错误
解决办法
我们只需修改变量名listx就可以了:
listx = ['经点', '咸汤', '鱼儿', '骆驼']
tup_1 = (1, 2, 3, 4, 5)
tupToList = list(tup_1)
print(tupToList)
1
2
3
4
5
6
运行后和结果是正常的:
[1, 2, 3, 4, 5]
因此,在命名变量时要注意,应避免和python的函数名、关键字冲突。
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632