2016-11-06 3 views
2

Интересно, можно ли распечатать Emojis на консоли Python 3 в Windows. На самом деле, чтобы избежать следующее сообщение об ошибке:Показать Emoji в консоли Python

codec can't encode character '\U0001f44d' in position 10: character maps to 
<undefined> 

Я использовал:

import emoji as moji 
print(moji.emojize('Python is :thumbsup:', use_aliases=True).encode('unicode- 
escape')) 

, который, как ожидается, , печать право character:U0001f44d без exception.

+0

* Которая * операционная система, которая * консоль Python *, вы имеете в виду * окно консоли Windows * или что-то еще? –

+0

Потому что в противном случае ответ будет ** да **, '>>> print ('\ U0001f44d')' -> '', если вы запускаете это на Linux и Python 3.5.2 и Konsole и так далее. –

+0

@AnttiHaapala: да, я использую 'Windows' как' OS'. это главная причина? если «да», почему «Windows» здесь помеха? –

ответ

2

Консоль Windows, имеет много ограничений в отношении символов Unicode, особенно за пределами основной многоязыковой плоскости (BMP, или U + 0000 до U + FFFF). Консоль по умолчанию использует устаревшую OEM-кодировку (cp437 в US Windows) и имеет ограниченные символы поддержки шрифтов за пределами локализованной кодировки. Найдите Python IDE, которая имеет хорошую поддержку UTF-8.

Один быстрый и грязный способ, чтобы увидеть большое разнообразие символов Unicode, чтобы записать в файл и использовать браузер:

import os 
with open('test.htm','w',encoding='utf-8-sig') as f: 
    f.write('\U0001f44d') 
os.startfile('test.htm') 

Это показывает thumbs up в последней Chrome браузером по моей системе Windows 10 ,

+0

Спасибо за ваши объяснения. –

+0

хорошая идея использовать utf-8-sig. Если бы Google долгое время находил информацию об этом –

-2

"Emoji For Python":

Установка:pip install emoji --upgrade

Пример:

>> import emoji 
    >> print(emoji.emojize('Python is :thumbs_up_sign:')) 
    Python is 
    >> print(emoji.emojize('Python is :thumbsup:', use_aliases=True)) 
    Python is 

Вы можете найти любой Emoji Юникода в этих ссылок:

  1. Emoji cheat sheet
  2. Full emoji list

More information here.

+1

Это то, что делает OP. Однако приведенный выше код не работает в Windows. –

Смежные вопросы