Создать совместимый с Excel файл CSV с помощью python?

Я пытаюсь создать файл csv, используя python, который действительно совместим с Excel (я использую 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, я получаю столбцы:

{ {1}}

09-Jan  09-Feb  09-Mar

[Grrr, спасибо Excel. Серьезно, в чем смысл кавычек?]

Я читал в другом месте , что для того, чтобы заставить Excel рассматривать строки как буквальные, они должны иметь префикс в виде знака равенства = "Like Это ". Итак, что я действительно хочу создать:

="9-1",="9-2",="9-3"

Есть ли способ сделать это с помощью модуля csv в Python? Я предполагаю, что это потребует создания настраиваемого диалекта , но я не вижу никакой переменной, которая дала бы мне желаемый результат.

9
задан Cœur 8 December 2017 в 14:52
поделиться