Python中文
首页
教程
问答
标签
搜索
登录
注册
我是如何指定一个json路径来获取所有对象的
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我试图获取json路径的所有对象,但找不到在同一路径中引用“所有对象”的方法</p> <pre><code>{ "sfw-per-service-set-nat-pool": [ { "pool-name": [ { "data": "11111111" } ], "translation-type": [ { "data": "2222222222" } ], "pool-address-range-list": [ { "pool-address-range": [ { "data": "1.1.1.1-1.1.1.1" }, { "data": "2.2.2.2-2.2.2.2" } ] } ] </code></pre> <p>这是我在“pool address range”中尝试访问的json片段,并获取其中的所有对象,但我总是在“pool address range”中通过“1”更改json路径“address=item['pool-address-range-list'][0]['pool-address-range'][1]['data']”</p> <pre><code>import json with open('dd.json') as f: data = json.load(f) for item in data['sfw-per-service-set-nat-pool']: name = item['pool-name'][0]['data'] address=item['pool-address-range-list'][0]['pool-address-range'][0]['data'] block= item['port-blocks-in-use'][0]['data'] mblock= item['max-port-blocks-used'][0]['data'] </code></pre> <p>预期结果必须是“池地址范围”中的所有对象,并且只进行一次迭代,这是可能的吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果您试图获取<code>'pool-address-range-list'</code>中的所有地址,那么可以在循环中使用列表理解。从技术上讲,这是另一个循环,但它似乎是你的最佳选择</p> <pre><code>addresses = [a['data'] for a in item['pool-address-range-list'][0]['pool-address-range']] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在PyObj中使用respondsToSelector和performSelector
10 回答
如何在pyobj中停止线程
1 回答
如何在pyobj中生成线程
4 回答
如何在pyodbc中为记录集指定游标类型?
5 回答
如何在pyodbc中从用户处获取表名,同时避免SQL注入?
7 回答
如何在pyodbc中使用executemany运行多个SELECT查询
8 回答
如何在pyodbc中同时在n个游标上并行运行n个进程?
4 回答
如何在pyodbc中控制连接池的大小?
4 回答
如何在pyodbc中自动调用fetchall()而不进行异常处理?
5 回答
如何在pyODBC查询中参数化日期戳?
7 回答
如何在pyodbc输出转换器函数中解压sqlserver DATETIME?
10 回答
如何在pyodb中安装所有驱动程序
2 回答
如何在pyodb嵌套循环中调用不同的查询
3 回答
如何在pyomo.environ公司modu装置
3 回答
如何在Pyomoconstraints中建模逻辑或量词
2 回答
如何在Pyomo中为约束使用数组
10 回答
如何在pyomo中使用集和范围集的多级索引?
5 回答
如何在PYOMO中分配伪二进制变量
8 回答
如何在Pyomo中创建OR约束?
8 回答
如何在Pyomo中动态地将变量添加到列表中?
7 回答