我有一个yaml文件,该文件由pyqtgraph库生成,用于布置码头,如下所示:
float: []
main: !!python/tuple
- vertical
- - !!python/tuple
- vertical
- - !!python/tuple
- horizontal
- - !!python/tuple
- dock
- NameOfDock1
- true
- !!python/tuple
- dock
- NameOfDock2
- true
- !!python/tuple
- dock
- NameOfDock3
- true
- !!python/tuple
- dock
- NameOfDock4
- true
- !!python/tuple
- dock
- NameOfDock5
- true
- sizes:
- 174
- 174
- 433
- 388
- 401
- !!python/tuple
- horizontal
- - !!python/tuple
- dock
- NameOfDock6
- true
- !!python/tuple
- dock
- NameOfDock7
- true
- sizes:
- 397
- 1185
- sizes:
- 313
- 93
- !!python/tuple
- horizontal
- - !!python/tuple
- dock
- NameOfDock8
- true
- !!python/tuple
- dock
- NameOfDock9
- true
- sizes:
- 791
- 791
- !!python/tuple
- horizontal
- - !!python/tuple
- dock
- NameOfDock10
- true
- !!python/tuple
- dock
- NameOfDock11
- true
- sizes:
- 1318
- 264
- sizes:
- 410
- 80
- 80
有没有一种优雅的方法可以查询此类yaml文件以获得所有码头名称的列表([NameOfDock1, NameOfDock2, NameOfDock3, NameOfDock4, ...]
)。我听说过yaql库,但如果可能的话,我更喜欢内置解决方案,但如果易于实现,也很受欢迎。提前感谢您的建议
附言:
我认为有这样一个查询是很优雅的:如果在每个python元组中都存在“dock”元素,那么将下一个元素附加到dock_list
中,但我不确定如何实现它
您的结构似乎是节点,其中每个节点是
vertical
、horizontal
或dock
。前两个有子项作为第二项,dock
有一个名称。因此,获取所有码头名称的最简单方法是折叠:这会给你
相关问题 更多 >
编程相关推荐