数据: {\“ id \”:123,\“ channel \”:\“ private_A25BHd \”,\“ text \”:{\“ content \”:\“ {\\” m \\“:\\” event \ \“,\\” p \\“:{\\” id \\“:123123123,\\” aid \\“:125123123,\\” sym \\“:\\” BITMEX:XBTUSD \\“, \\“ res \\”:\\“ 1 \\”,\\“ desc \\”:\\“测试 第1行上的消息\\ n测试以下消息 line2 \\“,\\” snd \\“:false,\\” snd_file \\“:\\” alert \ / fired \\“,\\” snd_duration \\“:0.0,\\” popup \\ “:true,\\” fire_time \\“:123123,\\” bar_time \\“:123123,\\” cross_int \\“:true}} \”,\“ channel \”:\“ alert \”} }
不幸的是,它以字符串形式出现,尽管我希望在可能的情况下将其更改为字典。
答案 0 :(得分:3)
在python中使用json库
import json
json.loads(your_string)
答案 1 :(得分:2)
您可以使用函数json.loads()
通过导入json
库将字符串解析为JSON对象(Python字典)。
代码:
import json
json_string = '{\"id\":123,\"channel\":\"private_A25BHd\",\"text\":{\"content\":\"{\\"m\\":\\"event\\",\\"p\\":{\\"id\\":123123123,\\"aid\\":125123123,\\"sym\\":\\"BITMEX:XBTUSD\\",\\"res\\":\\"1\\",\\"desc\\":\\"test message on line1\\ntest message on line2\\",\\"snd\\":false,\\"snd_file\\":\\"alert\/fired\\",\\"snd_duration\\":0.0,\\"popup\\":true,\\"fire_time\\":123123,\\"bar_time\\":123123,\\"cross_int\\":true}}\",\"channel\":\"alert\"}}'
parsed_string = json.loads(json_string)
print(parsed_string)
输出:
{'text': {'channel': 'alert', 'content': '{"m":"event","p":{"id":123123123,"aid":125123123,"sym":"BITMEX:XBTUSD","res":
"1","desc":"test message on line1\ntest message on line2","snd":false,"snd_file":"alert/fired","snd_duration":0.0,"popu
p":true,"fire_time":123123,"bar_time":123123,"cross_int":true}}'}, 'channel': 'private_A25BHd', 'id': 123}
&如果您只想打印任何特定值,可以使用
print(parsed_string["id"])
它输出id
的{{1}}值