我的代码看起来像这样:
for filename in files:
with open(filename, 'rb') as csvfile:
csvreader = csv.reader(csvfile, delimiter=';')
values=list(csvreader)
dosomething()
我有大约 10 个文件要处理,第一个文件没有问题。但是当 python 尝试开始处理第二个文件时,它说
Traceback (most recent call last):
File "plot.py", line 20, in <module>
values=list(csvreader)
TypeError: 'list' object is not callable
有人知道为什么这行不通吗?
请您参考如下方法:
您在某个地方使用了一个名为 list 的(全局的,如果问题出在此处)变量来保存列表的实例。这是个坏主意。名称 list 每次被使用时都会被查找,并且该变量优先于实际的 list 类型被发现,这正是您想要的(即为了构造一个来自 csvreader 结果的列表)。
