【问题标题】:Python adding empty rows in open with functionPython在使用函数打开时添加空行
【发布时间】:2019-11-08 01:38:07
【问题描述】:

我有几个 dfs 看起来是这样的:

A    B    C    D
1    2    3    4
11   22   33   44
111  222  333  444

我尝试将它们写入 csv 文件。我用:

with open(matchedLine + 'OUT', 'a') as f:
        df.to_csv(f, header=False, index = False)

在 csv 中,我在每一行之后都有一个空行。我的意思是:

1 2 3 4

11 22 33 44 

etc

为什么?如何删除那些空行?我的代码有什么问题?

.

【问题讨论】:

    标签: python pandas file csv


    【解决方案1】:

    只需在打开的函数中添加参数:newline=''。

    该行将是:

    with open(matchedLine + 'OUT', 'a', newline=''):
    

    【讨论】:

    • 哦,太简单了,我没有找到它:C 我虽然没有 \n 是默认值。谢谢你!
    • 是的,行默认以 \r\n 结尾,不客气
    【解决方案2】:

    符合标准的 CSV 文件的行以 "\r\n" 结尾,无论使用何种平台,以确保轻松共享。出于这个原因,在 Python 3 中,csv 库会写入行尾,并希望使用newline='' 打开文件。

    只写:

    with open(matchedLine + 'OUT', 'a', newline='') as f:
            df.to_csv(f, header=False, index = False)
    

    【讨论】:

      猜你喜欢
      • 2018-10-22
      • 1970-01-01
      • 2021-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-11
      • 1970-01-01
      • 2018-08-09
      相关资源
      最近更新 更多