schreiben Sie xlsx-Datei mit openpyxl-Modul in python

Ich habe Probleme beim schreiben in excel-Datei mit openpyxl Modul. So weit ich in der Lage bin, dies zu schreiben, code

from openpyxl.workbook import Workbook
import datetime

header = [u'Name', u'Email', u'Mobile', u'Current location',]
new_data = [
               [u'name1', u'[email protected]', 9929283421.0, u'xxxx'], 
               [u'name2', u'[email protected]', 9994191988.0, u'xxxx']
           ]
wb = Workbook()
cur_date = str(datetime.date.today())
log_file = "%s/%s_%s_errorlog.xlsx" % (settings.MEDIA_ROOT,
                                       os.path.splitext(file_name)[0], 
                                       cur_date)
log_csv = wb.worksheets[0]

for i in range(1, len(header) + 1):
    log_csv.cell(row = 1 ,column = i).value = header[i - 1]

wb.save(log_file)

error_count = 0
for each_row in new_data:
    error_count += 1
    for i in range(1, len(each_row) + 1):
        log_csv.cell(row = error_count ,column = i).value = each_row[i - 1]

wb.save(log)

Datei ist erstellt, aber es ist beschädigt und ich bin nicht in der Lage, um es zu öffnen mit dem excel-Datei-reader (LibreOffice), bereitgestellt durch das OS (ubuntu). Auch der Inhalt der Datei nicht lesbar sind. Nicht sicher, was ich falsch mache

  • Warum sind Sie versuchen zu schreiben, die Koordinaten, anstatt mit ws.append()? Erstellen Sie ein Angebot über eine Sequenz ist schlecht Python. Verwenden enumerate(seq) statt.
Schreibe einen Kommentar