在 Python 的控制台中显示 Emoji

时间:2023-03-13
本文介绍了在 Python 的控制台中显示 Emoji的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

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

I wonder if it's possible to print Emojis in a Python 3 console on Windows. Actually, to avoid the following error:

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.

which is, as expected, printing the right character:U0001f44d without any exception.

推荐答案

Windows 命令提示符对于 Unicode 字符有很多限制,尤其是那些基本多语言平面之外的字符(BMP,或 U+0000 到 U+FFFF).命令提示符默认为旧版 OEM 编码(美国 Windows 上为 cp437),并且对本地化编码之外的字符的字体支持有限.寻找一个对 UTF-8 有良好支持的 Python IDE.

The Windows command prompt has a lot of limitations with regards to Unicode characters, especially those outside the basic multilingual plane(BMP, or U+0000 to U+FFFF). The command prompt defaults to a legacy OEM encoding (cp437 on US Windows) and has limited font support for characters outside the localized encoding. Find a Python IDE that has good support for UTF-8.

查看各种 Unicode 字符的一种快速而简单的方法是写入文件并利用浏览器:

One quick-and-dirty way to see a wide variety of Unicode characters is to write to a file and leverage the browser:

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

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

This displays in the latest Chrome browser on my Windows 10 system.

这篇关于在 Python 的控制台中显示 Emoji的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:如何在ctypes中传回指针? 下一篇:通过 connect 传递额外的参数

相关文章