您的位置:首页技术文章
文章详情页

Python 处理带有 u 的字符串操作

浏览:9日期:2022-06-25 09:17:27

最近遇到一个头疼的问题,用socket接收到一个字符串

格式如下:

{“trade_status”: {“desc”: “u30106u3011 - u8d22u52a1u7ed3u7b97u5df2u5b8cu6210 “}}/end/

其中含有一段含有u的编码字串,怎么将其转化为汉字。

decode().encode(‘utf-8’) 不行,decode、encode半天搞不定,后来偶然发现,在decode时可以选则unicode-escape

代码如下:

# -*- coding: utf-8 -*-import socketif __name__ == ’__main__’: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((’192.168.6.63’, 10001)) sock.send(’[{'action': 'trade_status'}]’) rec = sock.recv(1024) print rec print rec.decode(’unicode-escape’).encode(’utf-8’) print rec.decode(’raw_unicode-escape’).encode(’utf-8’) sock.close()输出结果:

{'trade_status': {'desc': 'u30101u3011 - u4ea4u6613u4e2d '}}/**end**/{'trade_status': {'desc': '【1】 - 交易中 '}}/**end**/{'trade_status': {'desc': '【1】 - 交易中 '}}/**end**/

补充:Python3解析【u】和【u】字符

【u】字符示例

a = ’u5317u4eacu5e02’print(a)

北京市

b = ’u5317u4eacu5e02’print(b)

u5317u4eacu5e02

json.loads解析

import jsona = ’u5317u4eacu5e02’b = ’'%s'’ % ac = json.loads(b)print(a, b, c, sep=’n’)

u5317u4eacu5e02

“u5317u4eacu5e02”

北京市

读取文件中u字符

Python 处理带有 u 的字符串操作

demjson

from demjson import decode # pip install demjson

Python 处理带有 u 的字符串操作

以上为个人经验,希望能给大家一个参考,也希望大家多多支持好吧啦网。如有错误或未考虑完全的地方,望不吝赐教。

标签: Python 编程
相关文章: