如何在导出到csv时跳过\n符号?

2024-07-07 07:54:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张有这个表格的单子

[['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'打开。你知道吗


Tags: httpspdfwwwnugovplnecongress
1条回答
网友
1楼 · 发布于 2024-07-07 07:54:54

正如您所注意到的,有些字符串包含chars

\n”(或ASCII0x0A10)或LF换行))是写入此类字符串时进行解释的特殊字符。为了解决您的问题,您可以:

  • 把你的琴弦做成原始的(不知道这有多可行)。无论如何,要了解更多详细信息,请查看[Python 2]: String literals
  • 手动对“n”前面的任何“\”(bkslash)字符进行转义,使“\n”成为由2chars(\”和“n”组成的字符串。翻译成代码后,您应该将最后一行替换为(假设textextport内容粘贴在开头):

    escapedTextExport = [[item.replace("\n", "\\n") for item in row] for row in textExport]
    
    exportCSV(escapedTextExport, "textExport")
    

相关问题 更多 >