Уведомления

Группа в Telegram: @pythonsu

#1 Май 25, 2019 15:20:09

Face
Зарегистрирован: 2019-05-25
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Греческий алфавит

Привет всем!

Пользуюсь Python 3.4 (Win32)

Я новичок, и, как ни странно, столкнулся с проблемой.

Вопрос состоит в следующем, мне необходимо записать в файл .txt значение Сигмы.. (естественно в греческом алфавите)

Код ниже:

greek = (chr(code) for code in range(945, 970))

with open('Labels.txt', ‘w’) as f:
    for item in greek:
    f.write(“{}\n”.format(item))




Выдает ошибку:

Traceback (most recent call last):
File “C:\…\Python\trying.py”, line 5, in <module>
f.write(“{}\n”.format(item))
File “D:\Program Files\Python34\lib\encodings\cp1251.py”, line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)
UnicodeEncodeError: ‘charmap’ codec can't encode character ‘\u03b1’ in position 0: character maps to <undefined>




Подскажите, что это может быть, как-то в интернете мало инф по этому поводу.

Спасибо!

Отредактировано Face (Май 25, 2019 15:20:54)

Офлайн

#2 Май 25, 2019 15:49:56

Egorro13
Зарегистрирован: 2019-04-16
Сообщения: 105
Репутация: +  5  -
Профиль  

Греческий алфавит

У тебя пытается писать в кодировке 1251 (кириллица), а нужно UTF-8:

 with open('work.txt', "w", encoding='utf8') as f:

Офлайн

#3 Май 25, 2019 16:20:13

Face
Зарегистрирован: 2019-05-25
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Греческий алфавит

Спасибо, большое
Тоже думал, что в этом проблема, только писал через точку:

 sigma = greek[19].encode('utf-8')

но в файл писало какие-то буквы с цифрами.

Отредактировано Face (Май 25, 2019 16:21:08)

Офлайн

#4 Май 25, 2019 21:14:30

Face
Зарегистрирован: 2019-05-25
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Греческий алфавит

Что не верно в этом коде?
это так показывает мне греческий алфавит.

 greek = [chr(code) for code in range(945, 970)]
with open('Greeks.txt', 'w', encoding='utf8') as f:
    for item in greek:
        f.write("{}\n".format(item))
Sigma = str(open('Greeks.txt', 'r').readlines())
print(Sigma)

Офлайн

#5 Май 25, 2019 22:16:01

rami
Зарегистрирован: 2018-01-08
Сообщения: 281
Репутация: +  72  -
Профиль   Отправить e-mail  

Греческий алфавит

 greek = [chr(code) for code in range(945, 970)]
with open('Greeks.txt', 'w', encoding='utf8') as f:
    for item in greek:
        f.write("{}\n".format(item))
 
with open('Greeks.txt', 'r', encoding='utf8') as r:
    print(r.read())

Офлайн

#6 Май 26, 2019 12:51:08

Face
Зарегистрирован: 2019-05-25
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Греческий алфавит

Спасибо! Все работает

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version