Python中如何对包含解析元素名与对应随机值的结构执行JSON dump操作
实现方案
我们可以通过遍历原始JSON中lib对象的所有值生成新的键值对,自动适配任意数量的元素,Python实现代码如下:
import json import random # 原始JSON字符串 raw_json = '''{ "lib": { "p1": "xyz", "p2": "lmn", "p3": "opq" } }''' # 1. 解析原始JSON raw_data = json.loads(raw_json) # 2. 生成新的键值对:用lib下的所有值作为键,随机两位数字符串作为值 new_map = {} for val in raw_data["lib"].values(): # 随机生成10到99的整数转字符串,可根据需求调整随机范围 new_map[val] = str(random.randint(10, 99)) # 3. 构造目标结构 target_data = { "foo": { "bar": new_map } } # 4. 转成JSON字符串 result_json = json.dumps(target_data) print(result_json)
代码说明
- 自动适配元素数量:遍历
raw_data["lib"].values()会自动读取所有lib下的属性值,不管是3个还是50个都能正常处理 - 随机值规则可自定义:如果需要其他范围/类型的随机值,修改
random.randint(10, 99)对应的生成逻辑即可 - 如果需要格式化输出JSON,可给
json.dumps加上indent=2参数,输出带缩进的可读格式
内容的提问来源于stack exchange,提问作者darshtp
相关产品推荐
相关产品推荐

