字符串转中文:
s = '\u5468\u661f\u9170'
print(s) ##打印出来:周星酰,但是很多时候我们不能直接通过print获得中文显示.
python3的解决办法:s.encode('utf-8').decode('unicode_escape')
python2的解决方法:s.decode('unicode_escape')
如果想转成json:json.dumos(s).decode("unicode-escape")
另种字符串转中文(\u00):
s = '\u00e5\u0088\u0086\u00e9\u0085\u008d\u00e6\u009d\u0083\u00e9\u0099\u0090'
python3的解决方法:s.encode('utf-8').decode('unicode_escape')
python2的解决方法:s.decode("unicode_escape").encode("latin1").decode("utf8")
s..decode("utf8")
- 如果是u"\u00e5\u0088"字符串,则省去.decode("unicode_escape")
但是以上有时还会报错:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 25-32: ordinal not in range(128)
解决方法1:
在开头加上
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )
解决方法2:
使用cmd运行python程序,能正常显示结果
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。