问题:
在Python 3中,我使用csv.DictWriter将行附加到现有文件中。但是,正在使用CRLF行结尾而不是预期的LF行结尾。
代码示例:
#!/usr/bin/env python3
import csv
with open("test.csv", 'a', newline='') as test_f:
test_csv = csv.DictWriter(test_f, delimiter='|', fieldnames=['1', '2'])
test_csv.writerow({'1': "test1", '2': "test2"})
预期结果:
$ cat -e test.csv
test1|test2$
实际结果:
$ cat -e test.csv
test1|test2^M$
备注:
答案 0 :(得分:4)
通过指定lineterminator
,您可以控制它。
test_csv = csv.DictWriter(
test_f,
delimiter='|',
lineterminator='\n', # <--------
fieldnames=['1', '2'])