【问题标题】:opening a list of .csv files and do something打开 .csv 文件列表并执行某些操作
【发布时间】:2015-03-11 17:45:48
【问题描述】:
我有一个包含 25 个 .csv 文件的列表。我正在尝试打开每个文件,删除前 10 行,然后将其余行合并到一个文件中。
我有以下代码:
Files = glob.glob("filepath-*.csv")
for file in Files:
line = open(file, 'r')
lines = line.readlines()[10:]
print lines
但是,当我尝试打开文件时,它说它没有属性..
如何从列表中打开文件???
【问题讨论】:
标签:
python
list
csv
readlines
【解决方案1】:
您可以使用 itertools.islice 将每个 csv 的前十行以外的所有内容写入一个新文件:
from itertools import islice
files = glob.iglob("filepath-*.csv")
with open("joined.csv","w") as joined:
for f in files:
with open(f) as temp:
joined.writelines(islice(temp,10,None))
在您自己的代码中没有任何内容会引发错误,但效率可能很低,您在调用 readlines 之前已将 line 分配给其他内容。