Python教程

Python_unicode转中文

本文主要是介绍Python_unicode转中文,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在接口测试中,有些响应类似 "\u9875\u9762\u4e0d\u5b58\u5728"

在测试中不明白响应的什么,实际上这是unicode的中文编码。可用以下方法转换:

# coding:utf-8

# 直接在 unicode 字符串前加u  ===> 应用于静态转码,比如:已获取到字符串,只想查看中文意思
us = u"\u9875\u9762\u4e0d\u5b58\u5728"
print(us)

# 使用 decode 解码成中文 ===> 应用于动态转码
s = "\u9875\u9762\u4e0d\u5b58\u5728"
print(s.decode("unicode_escape"))

常见问题

需要注意的是,动态转码在拼接字符串时,若拼接的字符串包含中文或中文字符,会抛错:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)

# coding:utf-8

s = "\u9875\u9762\u4e0d\u5b58\u5728"

# 拼接的字符串 不包含 中文字符===>正常
print("result: %s" % s.decode("unicode_escape"))

# 拼接的字符串 包含 中文字符串===>异常
print("结果: %s" % s.decode("unicode_escape"))

 

 解决方法:

# coding:utf-8

s = "\u9875\u9762\u4e0d\u5b58\u5728"

# 在拼接字符串前 添加 u
print(u"结果: %s" % s.decode("unicode_escape"))

 

这篇关于Python_unicode转中文的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!