我想在字典中替换字典,但是当我尝试时,我总是在添加的字典周围获得引号和斜杠。
current_dict = {"header": {"from": "/app/off_grid_control/subscribe",
"messageId": "ef6b8e50620ac768569f1f7abc6507a5", "method": "SET",
"namespace": "Appliance.Control.ToggleX", "payloadVersion": 1,
"sign": "e48c24e510044d7e2d248c68ff2c10ca", "timestamp": 1601908439,
"triggerSrc": "Android"}, "payload": {"togglex": {"channel": 0, "onoff": 1}}}
raw_payload = {"togglex": {"channel": 0, "onoff": 1}}
payload = json.dumps(raw_payload)
从print语句中得到:
payload = {"togglex": {"channel": 0, "onoff": 0}}
看起来不错。
然后我尝试将新字典部分添加到原始字典中:
current_dict["payload"] = payload
得到这个:
current_dict = {"header": {"from": "/app/off_grid_control/subscribe",
"messageId": "ef6b8e50620ac768569f1f7abc6507a5", "method": "SET",
"namespace": "Appliance.Control.ToggleX", "payloadVersion": 1,
"sign": "e48c24e510044d7e2d248c68ff2c10ca", "timestamp": 1601908439,
"triggerSrc": "Android"}, "payload": "{"togglex": {"channel": 0, "onoff": 0}}"}
注意负载值周围所有添加的"
和。有人能帮我们添加一个不同的字典到"有效负载"吗?干净吗?
当你这样做的时候:
payload = json.dumps(raw_payload)
你正在将你的字典转换成一个json字符串,它看起来就像一个字典。如果您想将其作为python对象添加到外部字典中,则需要这样做:
current_dict["payload"] = json.loads(payload)