【发布时间】:2019-01-01 21:33:33
【问题描述】:
我正在使用 Python 的 csv 库和 DictWriter 对象将字典写入 csv 文件,如下所示:
with open('test.csv', 'w', newline='') as fp:
fieldnames = [<fieldnames for csv DictWriter>]
dict_writer = csv.DictWriter(fp, fieldnames=fieldnames)
dict_writer.writeheader()
dict_writer.writerow(<some dictionary here>)
结果是,如果我有一个长名称作为字典的值之一,则单元格如下所示:
但我希望它看起来像 这个:
有没有办法让单元格的大小适应字符串的长度?我想这是一个相对常见的问题,因为您不想在每次打开 csv 文件时手动执行此操作。
我怎样才能预先适应它?
【问题讨论】:
-
问题与 CSV 阅读器有关,在您的情况下似乎是 Microsoft Excel。使用另一种允许您执行此操作的格式怎么样,例如 XLS (stackoverflow.com/questions/17326973/…)
-
CSV 是一种简单的文本格式(在文本编辑器中打开它就会看到),它不包含有关电子表格程序应如何显示它的信息。有几种方法可以使 Excel 自动适应列宽,请查看this answer on Superuser。
-
谢谢! :) 链接中的解决方案(有效)是使用
StyleFrame库,该库适用于 xlsx 文件,实际上可以让您修改单元格的宽度。谢谢
标签: python python-3.x