如果您有一些JSON,其中包含未知路径,例如
...... {
"in": "query",
"name": "@baseType",
"type": "string",
"description": "To route object models\nValues: \xxx\uyyy or \xxx\zzzd"
},
{
"in": "header",
"name": "X-System",
"type": "string",
"default": "Inventory: Inventory\\nFor Quickconnect: My Resourse"
},
{
"in": "header",
"name": "env",
"type": "string",
"default": "Environment, i.e: a01, b02, etc."
}
我需要删除所有默认行,其中"in": "header"
但就我而言,我不知道所有可能发生的路径。有什么想法吗?
如果我知道路径,那么这相对容易。
for get_param_rec in api_spec['paths']['/resource']['get']['parameters']:
if get_param_rec['in'] == "header" and "default" in get_param_rec:
logger.info(" found bad header record and deleting it.")
del get_param_rec['default']
2条答案
按热度按时间gab6jxml1#
可以使用递归函数迭代JSON字典:
input.json
:output
:一个二个一个一个
eqqqjvef2#
您可以使用递归函数,根据每个深度级别的条件删 debugging 误记录。将每个子指令规范化为一系列值,以便您可以使用与子列表相同的方式迭代其子记录:
演示:https://replit.com/@blhsing/DefensiveMadeupService