【问题标题】:Writing a Semicolon containing String to CSV with "," as Delimiter still causes Separation in CSV-File使用“,”将包含字符串的分号写入 CSV,因为分隔符仍然会导致 CSV 文件中的分隔
【发布时间】:2021-01-17 08:49:25
【问题描述】:

我想将包含字符串的分号写入 CSV。

这就是我所拥有的:

name = ["Peter;Parker"]
 
file = open("Test.csv", "a", newline='')
writer = csv.writer(file, delimiter=',')
writer.writerow(name)

所以问题是,我想要第 1 列中的完整字符串名称,但实际上分号将前后部分拆分为第 1 列和第 2 列

【问题讨论】:

  • 您是否在电子表格中看到了这种行为?一些电子表格应用程序会尝试各种列分隔符,有时可以在文件打开时进行配置。
  • @snakecharmerb 在电子表格中是的,所以您是说问题不在 Python 输出端,而是在 csv 文件程序本身?
  • 是的,可能。您的文件似乎是单列 csv,因此如果电子表格程序在列内找到潜在的分隔符,它会假定它是列分隔符。这可以在导入对话框中进行配置。例如,这是 libreoffice calc 的导入对话框:imgur.com/a/7zvvTK7

标签: python python-3.x csv delimiter write


【解决方案1】:

所以@snakecharmerb 的评论是正确的。 就我而言,我试图用 Excel 打开 csv 文件,而 Excel 将分号作为默认分隔符。

您可以通过记事本编辑文件来检查原始文本是否正确,而不是双击 csv 文件来打开 Excel。 如果你想用 Excel 打开它,你需要加载一个空的 excel 文件并转到数据并从文本导入。现在加载 csv 文件,系统会询问您要使用哪个分隔符,不,您可以取消选择分号并选择 none 或 just ,

【讨论】:

    猜你喜欢
    • 2015-11-02
    • 2015-11-01
    • 2013-10-16
    • 2011-06-04
    • 1970-01-01
    • 2018-11-20
    • 1970-01-01
    • 2020-11-02
    • 1970-01-01
    相关资源
    最近更新 更多