Python的CSV模块在第一行写入标题而不是列名

5t7ly7z5  于 2023-07-31  发布在  Python
关注(0)|答案(2)|浏览(151)

我正在尝试将dict写入csv文件。我添加特定的列名,但是,他们写在第一行,而不是在标题(试图通过自由办公室打开)下面是代码:

def write_csv():
        with open(f'RTD {1}.csv', 'w') as csvfile:
            writer = csv.DictWriter(csvfile, delimiter=',', fieldnames=['one', 'two', 'three'])
            writer.writeheader() 
            writer.writerow({'one': 1, 'two': 2, 'three': 3})

字符串
下面是输出:


的数据

xfb7svmp

xfb7svmp1#

CSV是逗号分隔的纯文本,没有任何附加样式。
没有一个标准或语法让它们真正拥有所谓的“头”。但是,有一个惯例是添加一个人类可读的行/列,如下所示:

name, a, b, c
one, 1, 2, 3
two, 4, 5, 6

字符串
标题的“显示”取决于您使用的电子表格编辑器。在LibreOffice(以及大多数现代编辑器)中,可以选择“冻结”行和列,使它们表现为标题。
如果电子表格是要与其他人共享的(假设他们不知道如何使用freeze),请考虑从CSV切换到更人性化的格式

yacmzcpb

yacmzcpb2#

你的代码工作得很好。csv文件将第一行视为标题。
我相信你的问题是像libreoffice这样的电子表格没有以不同的格式显示标题,让你过滤和。等,这对这些软件来说是完全正常的。因为它们为您提供了一个工具(大多数时间在主页选项卡中)来添加您认为合适的过滤器。


的数据

相关问题