在Python的控制台中显示表情符号

时间:2016-11-06 06:51:55

标签: python console char codec emoji

我想知道是否可以在Windows上的Python 3控制台中打印Emojis。实际上,为了避免以下错误:

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

3 个答案:

答案 0 :(得分:4)

Windows控制台在Unicode字符方面有很多限制,特别是在基本多语言平面之外的那些(BMP,或U + 0000到U + FFFF)。控制台默认使用旧版OEM编码(美国Windows上为cp437),并且在本地化编码之外具有有限的字体支持字符。找到一个对UTF-8有很好支持的Python IDE。

查看各种Unicode字符的一种快捷方式是写入文件并利用浏览器:

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

这会在我的Windows 10系统上的最新Chrome浏览器中显示thumbs up

答案 1 :(得分:1)

首先安装表情符号模块--- pip安装表情符号

import emoji
print(emoji.emojize('Python is :thumbs_up:'))

此代码在Anaconda Jupyter环境中运行...

enter image description here

答案 2 :(得分:-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 

您可以在以下链接中找到任何表情符号unicode:

  1. Emoji cheat sheet
  2. Full emoji list
  3. More information here.