有没有办法从 Windows 在 python 终端中打印某些 unicode 字符?

Is there a way to print certain unicode characters in python terminal from Windows?

所以我一直在尝试使用 Python 以下 Unicode 字符在我的终端中打印:


def printUnicode():
    print(u"\u2b1c")
    print(u"\u1f7e8")
    print(u"\u1f7e9")

但是,这是我的输出: https://i.stack.imgur.com/pY9lc.png.

尽管我检查过我使用的是 UTF-8 (chcp=65001),但我不知道为什么我不能显示这些字符。如果我的 PC 配置、代码有问题或者无法在 windows cmd 中打印它们,我想知道。

可能您的 string literals:

中的转义序列有误
import unicodedata   # access to the Unicode Character Database

def check_unicode(s):
    print(len(s), s)
    for char in s:
        print( char, '{:04x}'.format( ord(char)), 
               unicodedata.category( char),
               unicodedata.name( char, '(unknown)') )

输出:

check_unicode( u"\u2b1c\u1f7e8\u1f7e9") # original string literals
5 ⬜὾8὾9
⬜ 2b1c So WHITE LARGE SQUARE
὾ 1f7e Cn (unknown)
8 0038 Nd DIGIT EIGHT
὾ 1f7e Cn (unknown)
9 0039 Nd DIGIT NINE
check_unicode( u"\u2b1c\U0001f7e8\U0001f7e9") # adjusted string literals
3 ⬜
⬜ 2b1c So WHITE LARGE SQUARE
 1f7e8 So LARGE YELLOW SQUARE
 1f7e9 So LARGE GREEN SQUARE

Edit. 运行 in Windows Terminal using default Cascadia Code font…