python csv writer不会将方言改为excel

时间:2013-12-28 11:29:50

标签: python excel python-2.7 csv comma

我需要编写一个包含两列的代码。在第一列中,数字1表示每行。 第二列需要是1到1000之间的随机数。第一行需要是一些文本。我有这个代码完整和工作。我还没有管理过一件事。需要使用microsft excel打开文件本身而不会出错。

方言或引用错误。如果我尝试通过添加方言功能将方言更改为excel: “writer = csv.writer(f,dialect ='excel')它不会改变任何文件。我用notepad ++检查了它。当我通过将方言改为这个”writer = csv.writer(f)来尝试它时,csv.QUOTE_NONE)“没有任何改变。最终结果总是一个逗号。这样在尝试用excel打开时仍然有错误。

总代码:

import csv
import sys
import random

f = open("2.3 en 2.4.xls", 'wt')
try:
    writer = csv.writer(f, dialect='excel')  #dialect veranderen wil niet.
    writer.writerow( ('schrijf', 'Kopregel') )
    for i in range(100):
        writer.writerow( (i+1, random.randint(0, 10000)) )
finally:
    f.close()

1 个答案:

答案 0 :(得分:0)

csv write只会写一个csv文件(excel方言意味着引用以下excel规则)。您无法使用csv writer创建XLS文件。

另外为什么你的文件模式为“wt”我甚至找不到文档中对“t”的引用。也许你的意思是“+”,这意味着截断文件。不确定如果你尝试使用“t”

将会发生什么

要编写xls文件,您需要使用其他工具,例如

openpyxl http://pythonhosted.org/openpyxl/

看看这个页面

http://www.python-excel.org/

或尝试谷歌搜索https://www.google.com.au/search?q=python+write+xls+files&oq=python+write+xls+files