Я пытаюсь записать данные в файл нелатинским скриптом, используя python tkinter. Я хочу записать данные в файл на хинди, который следует за сценарием деванагари. В то время как, когда я пишу некоторые данные на английском языке, все работает отлично, тогда как запись в файл на хинди вызывает некоторые ошибки. Как мне решить эту проблему?
Я попытался добавить (encoding = 'utf-8') в команду filedialog. При этом выдается следующая ошибка:
_tkinter.TclError: неверный параметр "-encoding": должен быть -confirmoverwrite, -defaultextension, -filetypes, -initialdir, -initialfile, -parent, -title или -typevariable
Эта ошибка отображается в тот момент, когда я нажимаю кнопку. Maybe (encoding = 'utf-8') не является атрибутом filedialog.
Ниже приведена соответствующая часть кода:
def save_file_hindi(event=""):
data = filedialog.asksaveasfile(mode="w", defaultextension=".html")
if data is None:
return
data.write("एक" + "<br>\n"+ "दो" + "<br>\n")
data.close()
Ожидаемый результат:
В сохраненном HTML-файле должно отображаться:
एक
दो
Фактический результат:
UnicodeEncodeError: кодек 'charmap' не может кодировать символы в позиции 19-26: символы отображаются на неопределенные