我正在尝试打开2个文件,读取这两个文件的内容,然后将两个文件的行导出到输出文件中。
我遇到的问题是我正在阅读的第二个文件在第一行的第一行中有相同的标题,所以我试图跳过将第二个文件的第一行写入我的新文件outputFile
,但下面编写的代码不执行该操作。
我知道我的代码是if row[1]=='Full Name'
而不是column[1]
,但如果我跳过将row[1]
写入outputFile
,它会跳过第一列而不是第一行,所以我想我会在if
语句中使用第一列。输入数据中第一列的标题是Full Name
,这就是我使用该特定if语句的原因。
我没有包含收到的数据,因为我认为回答这个问题不是必要的,但如果你认为这会有所帮助,我很乐意在这里发布。
如果有人可以帮助我跳过将第二行的第一行写入我的outputFile
,我们将不胜感激。
import csv, sys
firstFile = open(sys.argv[1],'rU')# U to parse
reader1 = csv.reader(firstFile, delimiter=',')
outputFile = open((sys.argv[3]), 'w')
for row in reader1:
row=(str(row))
row=row.replace("'", "")
row=row.replace("[", "")
row=row.replace("]", "")
outputFile.write(row)
outputFile.write('\n')
secondFile = open(sys.argv[2],'rU')
reader2 = csv.reader(secondFile, delimiter=',')
for row in reader2:
row=(str(row))
row=row.replace("'", "")
row=row.replace("[", "")
row=row.replace("]", "")
if row[1]=='Full Name':
next(reader2)
else:
outputFile.write(row)
outputFile.write('\n')
答案 0 :(得分:2)
您可以使用next
功能:
secondFile = open(sys.argv[2],'rU')
# skip first line
next(secondFile)
# csv parser does not see the first line of the file
reader2 = csv.reader(secondFile, delimiter=',')