我在一个目录中有很多 .csv 文件,我想在 Python 中循环打开每个文件,这样第一个 .csv 被读入 list[0],第二个 .csv 被读入list[1] 等等。
不幸的是,当我的代码循环遍历所有 .csv 文件时,它会将所有 .csv 文件放入列表 [0]。我该如何修改我的代码才能实现我的上述目标?非常感谢。
约翰
代码如下:
def create_data_lists():
i=0
for symbol in symbols:
with open(symbols[i]+'.csv', 'r') as f:
print i
reader = csv.reader(f)
reader.next()
for row in reader:
rowdata.append(row)
data_by_symbol.append(rowdata)
i=i+1
最佳答案
在 for 循环内,靠近顶部,您必须刷新列表 rowdata
。否则你将永远添加到那个。在 print i
rowdata = []
的东西
def create_data_lists():
for symbol in symbols:
with open(symbol+'.csv', 'r') as f:
print symbol
rowdata = []
reader = csv.reader(f)
reader.next()
for row in reader:
rowdata.append(row)
data_by_symbol.append(rowdata)
EDIT 去掉了 i
,因为我真的没有使用它
关于python - 将 .csv 文件读入 Python 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8003858/