我正在以编程方式使用Python创建csv文件。许多最终用户使用excel打开并与这些文件进行交互。问题是Excel默认情况下会突变文件中的许多字符串值。例如,Excel转换0123
> 123
。
如果我使用其他程序(例如记事本)打开它们,则写入到csv的值正确并正确显示。如果我使用Excel打开文件,将其保存,然后使用记事本打开,则该文件现在包含不正确的值。
我知道最终用户可以通过多种方法来更改其Excel设置以禁用此行为,但是在我的情况下,无法要求每个用户都这样做。
有没有一种方法可以使用Python生成csv文件,而Excel的默认副本不会更改其值?
编辑:尽管这些文件通常在Excel中打开,但它们不仅在Excel中打开,而且必须输出为.csv
,而不是.xlsx
。
简短的回答是“否”,不可能生成单个CSV,该CSV将在Excel和非Excel程序中以相同的方式显示(任意)数据。
有多种方法可以使您在Excel中打开CSV时强制字符串以所需方式显示,但是非Excel程序几乎肯定不会以所需方式显示它们。
尽管您说由于非Excel程序而必须坚持使用CSV,但您并没有说这些是哪个程序。如果他们毕竟可以打开.xlsx文件,那么.xlsx将是最佳选择。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句