gpt4 book ai didi

Python减少嵌套字典中的嵌套循环

转载 作者:太空狗 更新时间:2023-10-30 02:58:48 25 4
gpt4 key购买 nike

我的字典结构是这样的:

mapping = {'outputs': {'cube1': {'tx': 1.0}}}

我像这样迭代它们:

for node, props in mapping['outputs'].items():
for prop, value in props.items():
#Further loops

有没有一种优雅的方法可以将这两个嵌套循环合并为一个?

我想得到这样的结果:

for node, prop, value in nest_loop(mapping['outputs']):
#Further loops

最佳答案

您可以使用生成器表达式来完成类似于嵌套 for 循环所做的工作。示例 -

nest_loop = ((a,b,c) for a,x in mapping['outputs'].items() for b,c in x.items())
for node, prop, value in nest_loop:
#Do work

但我更喜欢可读性更好的嵌套循环。

演示 -

>>> mapping = {'outputs': {'cube1': {'tx': 1.0}}}
>>> nest_loop = ((a,b,c) for a,x in mapping['outputs'].items() for b,c in x.items())
>>> for node, prop, value in nest_loop:
... print(node,prop,value)
...
cube1 tx 1.0

关于Python减少嵌套字典中的嵌套循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33068766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com