Я хочу использовать xlwt для создания файла Excel. Однако некоторые строки содержат такие буквы, как ä, ü и ö. Поэтому я получаю UnicodeDecodeError. Можно ли это исправить?
Я перенес свой код с 3.5 (IDLE) на 2.7 (Pycharm). В 3.5 работало, наверное потому что не нужно было ставить
# coding=utf-8
# -*- coding: iso-8859-1 -*-
в начале кода в 3.5...
# coding=utf-8
# -*- coding: iso-8859-1 -*-
import xlwt
name_of_new_file = "Test.xls"
workbook_new = xlwt.Workbook()
worksheet = workbook_new.add_sheet("Testing")
worksheet.write(0, 0, "ä") # it works if I write an "a" instead
workbook_new.save("C:\\...\\Test123.xls")
Я почти уверен, что проблема связана с первыми двумя строками. В сообщении об ошибке говорится: UnicodeDecodeError: кодек ascii не может декодировать байт 0xc3 в позиции 19: порядковый номер не в диапазоне (128)
utf-8
ИЛИ вiso-8859-1
- он не может быть в обеих кодировках - ваши первые две строки дают противоречивую информацию (-*-
s, : или = сахар игнорируется Python). Он будет использовать информацию, которую найдет первой. - person jsbueno   schedule 25.07.2019