Python中如何动态修改嵌套JSON请求负载的值?

ID:21586 / 打印

python中如何动态修改嵌套json请求负载的值?

如何在 python 中动态修改 json 请求负载中的值

在构建 json 请求时,修改请求负载中的特定值可能需要动态修改。本文将通过一个具体的案例来说明如何在 python 中实现这一操作。

假设请求体的结构如下:

{     "shopattrresplist": [         {             "child": [                 {                     "child": [                         {                             "value": "{{"address":"{{address}}","longitude":{longitude},"latitude":{latitude},"province":{province},"city":{city},"region":{region}}}",                             "xxxx": "yyy"                         }                     ]                 }             ]         }     ] }

需要动态修改 "value" 键的值,使其包含特定变量。

立即学习“Python免费学习笔记(深入)”;

解决方案

首先,构建替换变量的映射:

replacement_map = {     "金花街道高第坊39号荔湾区金花街锦绣社区": address,  # 替换 address 值     "113.252272": longitude,  # 替换 longitude 值     # ... 其他变量的替换 }

然后,遍历映射并替换 "value" 键的值:

for key, value in replacement_map.items():     data["shopattrresplist"][0]["child"][0]["child"][0]["value"] = data["shopattrresplist"][0]["child"][0]["child"][0]["value"].replace(key, value)

但是,python 中的字符串替换不能正确处理 json 格式。因此,需要将替换后的字符串转换为 json 格式:

data["shopAttrRespList"][0]["child"][0]["child"][0]["value"] = json.dumps(data["shopAttrRespList"][0]["child"][0]["child"][0]["value"])

最后,使用经过修改的 "data" 发送请求。

上一篇: 如何通过inspect模块获取Python装饰器的传入参数?
下一篇: SQL批量新增报错“not enough arguments for format string”:如何避免参数数量不足?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。