在Python

时间:2017-04-22 13:50:36

标签: python unicode

我有一个用于表情符号的Unicode字符串数据库,例如U0001F60A。我想从数据库中提取它们并将它们转换为实际可用的unicode字符串。 (所以它们看起来像表情符号而不是一堆字符。)标准形式似乎是u'\U0001F60A',但是,我无法得到这种形式。

if sentiment < 0:
    emoji = cursor.execute("SELECT emojiuni FROM emojineg WHERE id='{}';".format(num)) # Get negative emoji from DB.
    emoji = cursor.fetchone()
    emoji = emoji[0]

这会emoji = U0001F60A,但我无法将其附加到u'\尝试变体,例如

`"u'\" + emoji + "'"`
u' + "\" + emoji + "'"
u'\emoji

不能工作,因为u'似乎是受保护的命令。有没有办法按照encode()命令的行将字符串变成unicode字符? (我也试过了,但这似乎不起作用,但也许我做得不对。)非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

2.x的:

>>> print unichr(int('U0001F60A'[1:], 16))

3.x的:

>>> print(chr(int('U0001F60A'[1:], 16)))