Возникает ошибка UnicodeEncodeError
UnicodeEncodeError: 'charmap' codec can't encode character '\u0450' in position 3: character maps to
<undefined>
вот так выглядит эта ошибка в моей программе, которая работает с файлами, как можно ее исправить, подскажите пожалуйста
мой код:
def file_readlines():
with open("Текст2.txt", 'r',encoding="cp1251") as f:
return(f.read())
def shifr_file_readlines(file_message, key):
s1=''
alf2 = ['а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т',
'у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я']
key=alf2.index(key)
for c in file_message:
if ord(c) in range(ord('а'), ord('я')+1): # если это символ а-я
s1 += chr(ord('а') + (ord(c) - ord('а') + key)%33)
elif ord(c) in range(ord('А'), ord('Я')+1): # если это символ А-Я
s1 += chr(ord('А') + (ord(c) - ord('А') + key)%33)
else: # иначе просто дописываем этот символ
s1 += c
return ''.join(s1)
def result_file_readlines(root,file_message,key):
lbl_out = Label(root,text="Файл зашифрован", font=50)
f=open("Текст2.txt","w")
f.write(shifr_file_readlines(file_message,key))
f.close()
lbl_out.place(x=460,y=410)
btn_filelines_cezar = Button(root, text="Зашифровать многострочный файл шифром Цезаря",command=lambda: result_file_readlines(root,p,tp2.get()),
font="Calibri 15",height=2,width=45,bg="green")
btn_filelines_cezar.place(x=0,y=390)