我正在尝试使用Python创建一个真正与Excel兼容的CSV文件(如果有区别,我正在使用Excel 2007)。
这就是我想做的事情的样子
import csv
data = [ ['9-1', '9-2', '9-3'] ]
fd = open('test.csv', 'wb')
try:
writer = csv.writer(fd, dialect='excel', quotechar='"', quoting=csv.QUOTE_ALL)
writer.writerows(data)
finally:
fd.close()
这将创建一个包含以下内容的csv文件:
"9-1","9-2","9-3"
当我在Excel中加载它时,我会得到这些列:
09-Jan 09-Feb 09-Mar
[Grrr,谢谢Excel。说真的,引号有什么意义?]
现在,我已经在其他地方阅读到,为了让Excel将字符串视为文字,必须在前面加上等号符号
="像这样"
。因此,我真正想要生成的是:="9-1",="9-2",="9-3"
有没有办法使用Python的csv
模块来实现这个?我猜想需要创建一个自定义方言,但是我找不到任何可以给我想要结果的变量。