Skip to main content
 首页 » 编程设计

python csv.read 在第二次迭代时失败

2025年05月04日16xiaohuochai

我的代码看起来像这样:

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 结果的列表)。