在python中将特定行从一个csv文件写入另一个csv文件
假设我有一个input.csv文件,它有10行。现在我只需要将奇数行写入另一个csv文件output.csv。如何在python中使用csv来实现这一点? 我尝试使用writer.writerow,但它只写入最后一行,也就是说,它只在output.csv的一行中覆盖input.csv中的行。 如何解决这个问题在python中将特定行从一个csv文件写入另一个csv文件,python,Python,假设我有一个input.csv文件,它有10行。现在我只需要将奇数行写入另一个csv文件output.csv。如何在python中使用csv来实现这一点? 我尝试使用writer.writerow,但它只写入最后一行,也就是说,它只在output.csv的一行中覆盖input.csv中的行。 如何解决这个问题 def filter_rows(s): r=0 data=[] with open('csv/github_issues_preproc1.csv', 'rb') as
def filter_rows(s):
r=0
data=[]
with open('csv/github_issues_preproc1.csv', 'rb') as f,open('csv/preproc1f.csv', 'wb') as f_out:
reader = csv.reader(f)
writer = csv.writer(f_out)
for row in reader:
r=r+1
if r==s:
data.append(row)
writer.writerows(data)
如果s是行索引列表,那么您的检查应该是
,如果s中的r:
。如果你只需要检查均匀度,如果r%2==0,你不需要s(偶数)如果r%2==1(奇数)。你是如何打开的?您必须使用f\u out=open(文件名'a')
而不是f\u out=open(文件名'w')
a
附加到文件,而w
覆盖该文件。此外,您的代码示例意图错误且不完整。是的。打开文件时使用“a”有效。非常感谢。