我有许多“进程”,每个进程都实现为一个类(实现一个接口-process
)和许多“数据集”,同样由一个类-dataset
表示。在
可以创建数据集及其依赖关系的有向无环图。它可能看起来像:
root
/ \
dataset1a dataset1b
| |
dataset2 dataset2b
/ | \ / \
dset3a | dset3b dset4a dset4b
\ | /
\ | /
\ | /
dataset3a4a
要获取每个数据集,必须应用一个进程(由process
类表示)。目前我正在用networkx创建一个DiGraph
,其中每个dataset对象都是一个节点,到达X
节点的过程是指向process
对象的节点上的一个属性。ROOT
只是一个虚拟节点,用于提供起始节点。在
这是用networkx表示图形的好方法吗?
假设dataset1a
和dataset1b
存在,并且必须创建它们的分散体(其中每个前一个数据集都是process
类的输入)…那么什么是遍历图的好方法,以便:
dataset3a4a
节点,我必须能够发现所有的“输入”来创建数据集-dset3a
、dset4a
和{
Python提供了一些可以代替networkx使用的内省工具。
__subclasses__
方法返回给定类的直接子类的列表:
^{pr2}$__bases__
属性返回类的基(直接父类):__bases__
属性提供了关于 如何查找输入以创建数据集。在要回答第一个问题,可以使用
__subclasses__
和__bases__
来 构建自己的遍历函数:收益率
相关问题 更多 >
编程相关推荐