如何跳过\ n个符号,当我导出为CSV?

问题描述 投票:0回答:1

我有了这种形式的列表

[['url', 'date', 'extractRaw', 'extractClean'], ['https://www.congress.gov/crec/2017/01/09/CREC-2017-01-09-senate.pdf', '20170109', 'UR\n\nIB\nU\n\nU\n\nE PL\n\nNU\n\nCo', '20170109', 'URIBUUE PLNUCo'], ['https://www.congress.gov/crec/2017/01/09/CREC-2017-01-09-senate.pdf', '20170109', 'UR\n\nIB\nU\n\nU\n\nE PL\n\nNU\n\nCo', '20170109', 'UURIBUUE PLNUCo']]

我也与此代码导出为CSV

def exportCSV(flatList, filename):
    with open(filename+".csv", "wb") as f:
        writer = csv.writer(f)
        writer.writerows(flatList)

exportCSV(textExport,'textExport')

该版本遵循新的生产线,我结束了一个CSV读取为\n符号的每一个新行。

我的愿望是得到了自己单独的行列表中的每个条目。这将是这个样子

url    date     extractRaw    extractClean
https://www.congress.gov/crec/2017/01/09/CREC-2017-01-09-senate.pdf    20170109    UR\n\nIB\nU\n\nU\n\nE PL\n\nNU\n\nCo    URIBUUE PLNUCo
https://www.congress.gov/crec/2017/01/09/CREC-2017-01-09-senate.pdf    20170109    UR\n\nIB\nU\n\nU\n\nE PL\n\nNU\n\nCo    URIBUUE PLNUCo
https://www.congress.gov/crec/2017/01/09/CREC-2017-01-09-senate.pdf    20170109    UR\n\nIB\nU\n\nU\n\nE PL\n\nNU\n\nCo    URIBUUE PLNUCo

是否writer.writerows()支持?我可以得到它忽略新线符号?

这不是一个重复。该\n是文本块的一部分,该文件被打开'wb'

python python-2.7 csv
1个回答
0
投票

当你发现,你的一些字符串包含\ n个字符。

“\ n”个(或ASCII的0x0A(10)或LF(换行)),是当这样的字符串被写入该被解释的特殊字符。为了解决你的问题,你既可以:

  • 让你的原始字符串(不知道的是,如何可行)。反正以了解详情[Python 2]: String literals
  • 手动逃脱“N”之前的任何“\”(bkslash)字符,从而“\ n”个变成由2个字符(“\”和“n”)的字符串。翻译成代码,你应该更换你的最后一行,由(假设textExport内容是在开始粘贴): escapedTextExport = [[item.replace("\n", "\\n") for item in row] for row in textExport] exportCSV(escapedTextExport, "textExport")
© www.soinside.com 2019 - 2024. All rights reserved.