【发布时间】:2017-04-29 07:14:07
【问题描述】:
我需要重新定义以下代码,以便行数据中的任何换行符(将显示为空白行)在写入的文件中显示为'\n'。
但是,'\n' 需要写在每一行之后才能显示为空行。
每一行显然都需要编码为“utf-8”以避免错误。
with open('csvfile.csv', 'w') as csvOutput:
testData = csv.writer(csvOutput, delimiter='|', escapechar=' ', quoting=csv.QUOTE_NONE)
for row in data:
newRow = [row[x].encode('utf-8') for x in xrange(len(row))]
testData.writerow(newRow)
testData.writerow(['\n'])
【问题讨论】:
-
如果你想在输出文件中得到
\n,试试testData.writerow('\\n').. -
要转义的换行符在哪里?实际行内容中有没有,意思是
row[x].replace('\n', '\\n').encode('utf-8')?或者你的意思是每行之间的空行应该有一个转义的换行符,意思是testData.writerow(['\\n'])? -
是的,我刚刚尝试了@101 的建议,即替换行内容中的换行符。如果适用,请随意格式化为答案。