我正在尝试用python制作一个不和谐的机器人,并使用Unicode作为表情符号,例如:
await ctx.send("\u1F389")这应该是五彩纸屑弹出表情符号,但我注意到它有5个字符,而不是通常的4 (1F389),显然,Python也是如此,它打印Ἰ9,我如何解决这个问题?
发布于 2021-05-02 02:10:34
\u必须是4位数的代码。\U使用8位代码:
>>> print('\U0001F389')
?您也可以使用chr
>>> print(chr(0x1f389))
?或者按名称查找和使用:
>>> import unicodedata as ud
>>> ud.name(chr(0x1f389))
'PARTY POPPER'
>>> print('\N{PARTY POPPER}')
?发布于 2021-05-02 02:10:23
非BMP Unicode代码点的Python表示法使用\U而不是\u和八位十六进制数字。
await ctx.send("\U0001F389")https://stackoverflow.com/questions/67349441
复制相似问题