我在使用某些测试代码时遇到了一些麻烦。此代码旨在:
使用新列表覆盖csv。
import csv
input1 = input("input 1")
input2 = input("input 2")
original = []
with open('test.csv', 'r') as f:
reader = csv.reader(f)
original = list(reader)
data = [input1,input2]
original.append(data)
with open('test.csv', 'w') as f:
writer = csv.writer(f)
writer.writerows(original)
例如,如果'cat'和'dogs'在文件中,并且我输入'zebras'和'giraffes',我希望当我在记事本中打开它时csv看起来像这样: link
但是,当我不止一次运行代码时,列表之间产生了空行,我不知道为什么。 link
我是Python新手,感谢任何帮助。
答案 0 :(得分:1)
解决方案是:
open('test.csv', 'w', newline='')
在新版本的Python中csv.Writer
现在处理换行符,但open
也可以。然后你必须告诉open
写入文件时不能添加换行符。有关详细说明,请参阅API documentation。