And*_*ise 9 python unicode python-2.7 emoji
我有一个Python 2.7程序,它从SQLite数据库中读取iOS文本消息.文本消息是unicode字符串.在以下文字信息中:
u'that\u2019s \U0001f63b'
Run Code Online (Sandbox Code Playgroud)
撇号由表示\u2019,但表情符号由表示\U0001f63b.我查找了有问题的表情符号的代码点,就是这样\uf63b.我不确定它的0001来源.我对字符编码很少了解.
当我逐个字符地打印文本时,使用:
s = u'that\u2019s \U0001f63b'
for c in s:
print c.encode('unicode_escape')
Run Code Online (Sandbox Code Playgroud)
该程序产生以下输出:
t
h
a
t
\u2019
s
\ud83d
\ude3b
Run Code Online (Sandbox Code Playgroud)
如何在Python中正确读取这些最后的字符?我在这里正确使用编码吗?我是否应该0001在阅读之前尝试将其丢弃,或者是否有更容易,更不傻的方式?
pvg*_*pvg 18
我不认为你正确使用编码,也不需要.你拥有的是一个有效的unicode字符串,其中包含一个4位和一个8位数的转义序列.在OS X上的REPL中尝试这个
>>> s = u'that\u2019s \U0001f63b'
>>> print s
that’s
Run Code Online (Sandbox Code Playgroud)
在python3中,尽管 -
Python 3.4.3 (default, Jul 7 2015, 15:40:07)
>>> s = u'that\u2019s \U0001f63b'
>>> s[-1]
''
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12831 次 |
| 最近记录: |