繁体   English   中英

在 Python 中从没有空行的文本文件写入 csv 文件

[英]Write csv file from text file without empty lines in Python

我试图从只有一行的 txt 文件创建 csv 文件。

txt 文件如下所示:

在此处输入图像描述

我的代码是:

row = []
with open('vehicles.txt', 'r', encoding='utf-8') as r:
    r = len(r.readlines())
with open('vehicles.txt', 'r', encoding='utf-8') as f:
    for i in range(r):
        data = {
            'vehicle': f.readline().strip()
        }
        row.append(data)
        csv_title = ['vehicle']
with open('vehicle.csv', 'w', encoding='utf-8', newline='') as f:
    writer = csv.DictWriter(f, fieldnames=csv_title)
    writer.writeheader()
    writer.writerows(row)

但是 csv 文件用空行创建

在此处输入图像描述

我怎样才能删除这些空行? 当我在终端打印这个时,它没有空行

编辑:

添加 newline="" 也无济于事。 csv 文件仍然带有空行

好吧,我的问题是,txt 文件有一些符号,这些符号形成了一个空行,并且由于 txt 文件很大,所以很难注意到这些符号。

所以我编码更改为utf-16 ,它使我成为了我想要的 csv 文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM