用Python显示表情符号';s控制台

用Python显示表情符号';s控制台,python,console,char,codec,emoji,Python,Console,Char,Codec,Emoji,我想知道是否有可能在Windows上的Python3控制台中打印表情符号。实际上,为了避免以下错误: codec can't encode character '\U0001f44d' in position 10: character maps to <undefined> 正如预期的那样,在没有任何异常的情况下打印正确的字符:U0001f44dWindows命令提示符对于Unicode字符有很多限制,特别是在基本多语言平面(BMP或U+0000到U+FFFF)之外的字符。命

我想知道是否有可能在Windows上的Python3控制台中打印表情符号。实际上,为了避免以下错误:

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

正如预期的那样,在没有任何异常的情况下打印正确的
字符:U0001f44d

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浏览器中。

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

import emoji
print(emoji.emojize('Python is :thumbs_up:'))
此代码在Anaconda Jupyter环境中工作


哪个操作系统,哪个Python控制台,你指的是Windows控制台窗口还是什么?否则答案是肯定的,
>>打印('\U0001f44d')
->
@AnttiHaapala:是的,我使用
Windows
作为
OS
。这是主要原因吗?如果
yes
,为什么
Windows
会在这里出现障碍?感谢您的解释。使用utf-8-sig是个好主意。必须在谷歌上搜索一段时间才能找到相关信息是的,如果一个文件有一个UTF-8编码的BOM(字节顺序标记),大多数浏览器将使用UTF-8对文件进行解码以显示。这就是
utf-8-sig
确保写入文件的内容。
import emoji
print(emoji.emojize('Python is :thumbs_up:'))