目标
将十六进制数据解析为 UTF-8 字符。
环境
- Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03) [MSC v.1900 64 bit (AMD64)] on win32
方法一
hexstring = b'\xe7\x8e\xa9\xe5\xae\xb6\x33\x38\x35'
hexstring.decode('utf-8')
# 玩家385
方法二
import codecs
hexstring = r'\xe7\x8e\xa9\xe5\xae\xb6\x33\x38\x35'
hexstring = hexstring.replace(r'\x', '')
codecs.decode(hexstring, "hex").decode('utf-8')
# 玩家385
参考
- https://docs.python.org/3.3/howto/unicode.html
- Python replace()方法 http://www.runoob.com/python/att-string-replace.html
- convert hex encoded string to ASCII https://python-forum.io/Thread-convert-hex-encoded-string-to-ASCII
- python 字符串与16进制互转 https://blog.csdn.net/agoago_2009/article/details/28270343
- 如何用python将utf8编码的16进制字符串转换成对应的文字? https://segmentfault.com/q/1010000000668280