#python_3x #файлы #unicode
Приветствую! Как заставить питон читать из файла и выводить любые юникод символы?Типа такого всякого разного. ←↑→↓↔↕↖↗↘↙↚↛↜↝↞↟. При попытке просто прочитать # -*- coding: utf-8 -*- f = open("unicode_symbols.txt", "r") for s in f: print(u""+s) print("\n") выводит следующую ошибку return codecs.charmap_decode(input,self.errors,decoding_table)[0] UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 18: character maps to
Ответы
Ответ 1
попробуйте для начала указать кодировку файла при чтении явно. f = open("unicode_symbols.txt", "r", encoding = 'utf-8') и - все получится! Ну если не верите - попробуйте еще такой код: # BEGIN NUMERICS_DEMO import unicodedata sample = '1\xbc\xb2\u0969\u136b\u216b\u2466\u2480\u3285' f = open("F:\\PyCodes\\WOW\\utf8_rows.txt", "r+", encoding='utf-8') for char in sample: _ = 'U+%04x' % ord(char) + char.center(6) + unicodedata.name(char) f.write(_) for s in f: print(u""+s) # END NUMERICS_DEMO Ну понятное дело - путь к своему файлу нарисуйте =D У меня на печати это: U+0031 1 DIGIT ONE U+00bc ¼ VULGAR FRACTION ONE QUARTER U+00b2 ² SUPERSCRIPT TWO U+0969 ३ DEVANAGARI DIGIT THREE U+136b ፫ ETHIOPIC DIGIT THREE U+216b Ⅻ ROMAN NUMERAL TWELVE U+2466 ⑦ CIRCLED DIGIT SEVEN U+2480 ⒀ PARENTHESIZED NUMBER THIRTEEN U+3285 ㊅ CIRCLED IDEOGRAPH SIX
Комментариев нет:
Отправить комментарий