我想帮助将字节转换为字典,我有;Python将字节数组转换为字典
收到消息:b'req:21; num:54771377; INFO:; GATE:N;'
我想
D1 = { 'REQ':21, 'NUM':54771377, 'INFO':, '门':N}
谢谢
我想帮助将字节转换为字典,我有;Python将字节数组转换为字典
收到消息:b'req:21; num:54771377; INFO:; GATE:N;'
我想
D1 = { 'REQ':21, 'NUM':54771377, 'INFO':, '门':N}
谢谢
用gencomp管道插入字典(删除空字段)。根据具有转换的字节串之后到分号分裂(假设:数据字节对象内是ASCII)
s = b"req:21;num:54771377;INFO:;GATE:N;"
d = dict(toks.split(":") for toks in s.decode("ascii").split(";") if toks)
print(d)
结果:
{'INFO': '', 'GATE': 'N', 'req': '21', 'num': '54771377'}
笔记:
一个dictcomp将像这样诱惑d = {toks.split(":")[0] : toks.split(":")[1] for toks in s.decode("ascii").split(";") if toks}
,但这意味着你分裂了两次,因为分号太多
,如果你有非ASCII数据,你仍然可以做的工作,但该数据将保持为bytes
:d = dict(toks.split(b":") for toks in s.split(b";") if toks)
Merci Jean-François – Kef
像这样的事情?
str = b'req:21;num:54771377;INFO:;GATE:N;'.decode("ascii")
arr = str.split(';')[::-1]
arr = [x.split(':') for x in arr if x != '']
return dict(arr)
结果:
{u'INFO': u'', u'GATE': u'N', u'num': u'54771377', u'req': u'21'}
你好,你是怎么做是为了这个?你能向我们展示一些代码吗? – tanaydin