Heim  >  Fragen und Antworten  >  Hauptteil

python - openpyxl liest XLSX-Dateien und generiert Daten in ein Wörterbuch. Gibt es ein Problem mit der chinesischen Kodierung?

Der folgende Code liest die Daten in 1.XLSX, speichert alle Daten im Wörterbuch my_data und speichert das Wörterbuch dann zur späteren Verwendung in der Datei census2010.py.
Problem:
Die Operation kann erfolgreich sein. Aber in der Ausgabedatei ist der gesamte chinesische Inhalt u'u5f20u5baau798f': Solche Codierung
Wie ändere ich die Codierung so, dass sie im Wörterbuch zu normalen chinesischen Zeichen wird?

import openpyxl, pprint
print('Opening workbook...')
wb = openpyxl.load_workbook('1.xlsx')
sheet=wb.get_active_sheet()
my_data={}
print('Reading rows...')
for row in range(1,125):
    cun=sheet['b'+str(row)].value
    huzhu=sheet['c'+str(row)].value
    renkou1=sheet['d'+str(row)].value
    my_data.setdefault(cun,{})
    my_data[cun].setdefault(huzhu,{'hushu':0,'renkou':0})
    my_data[cun][huzhu]['hushu']+=1
    my_data[cun][huzhu]['renkou']+=int(renkou1)
print('Writing results...')
resultFile = open('census2010.py', 'w')
resultFile.write('allData = ' + pprint.pformat(my_data))
resultFile.close()
print('Done.')
我想大声告诉你我想大声告诉你2686 Tage vor1181

Antworte allen(2)Ich werde antworten

  • 大家讲道理

    大家讲道理2017-06-12 09:27:15

    import codecs
    codecs.open('census2010.py', 'w', 'utf-8')

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-12 09:27:15

    会不会是在读的时候就已经是unicode编码了?

    Antwort
    0
  • StornierenAntwort