我有这个名为 task2.csv 的CSV。标题为:项和描述。
我正在尝试使用以下csv python脚本将" i", " ink"
添加到此csv。但它添加到错误的列并修改最后一个字段。
请帮助我让我的脚本从一个全新的行开始。
import csv
def readCsv(file):
dict = {}
with open(file) as csvdata:
csvReader = csv.DictReader(csvdata)
for row in csvReader:
print row['item'], row['description']
def writeCsv(file, field):
fieldnames = ['item', 'description']
with open(file, 'a') as f:
writer = csv.DictWriter(f, fieldnames=fieldnames)
writer.writerow({'item': 'i', 'description': 'ink'})
writeCsv("task2.csv", "a")
readCsv("task2.csv")
ORGINAL CSV:
MODIFIED CSV:
答案 0 :(得分:1)
我可以重现这个问题。
原因:您的CSV最后一行未完成;最后一行不以' new line`字符结束,即\ n
并且在更安全的侧面writer = csv.DictWriter(f, fieldnames=fieldnames)
到
writer = csv.DictWriter(f, fieldnames=fieldnames, lineterminator="\n")
在记事本中打开csv,在hati
之后按输入并保存
然后运行程序,它应该解决问题。