我试图将表情符号转换为python 3中的Unicode.例如,我将使用表情符号,并希望获得相应的unicode"U + 1F600".同样我想将'U + 1F600'转换回来.现在我已经阅读了文档并尝试了几个选项,但是pythons行为让我感到困惑.
>>> x = ''
>>> y = x.encode('utf-8')
>>> y
b'\xf0\x9f\x98\x80'
Run Code Online (Sandbox Code Playgroud)
表情符号被转换为字节对象.
>>> z = y.decode('utf-8')
>>> z
''
Run Code Online (Sandbox Code Playgroud)
将字节对象转换回表情符号,到目前为止一直很好.
现在,为表情符号取unicode:
>>> c = '\U0001F600'
>>> d = c.encode('utf-8')
>>> d
>>> b'\xf0\x9f\x98\x80'
Run Code Online (Sandbox Code Playgroud)
这会再次打印出字节编码.
>>> d.decode('utf-8')
>>> ''
Run Code Online (Sandbox Code Playgroud)
这会再次打印出表情符号.我真的无法弄清楚如何只在Unicode和表情符号之间进行转换.