函数依赖关系解析与执行

pyungo的Python项目详细描述


https://circleci.com/gh/cedricleroy/pyungo.svg?style=shield

平果

pyungo是一个轻量级库,用于链接一组依赖项 一起工作,并以有序的方式执行它们。

pyungo是围绕GraphsNodes构建的,用于 DAG (有向无环图)。节点表示 使用一组已定义的输入运行并返回一个或多个 输出。GraphNodes的集合,其中 可以以逻辑方式流动,一个节点服务的输出 作为另一个的输入。

安装

>> pip install pyungo

简单示例

graph=Graph()@graph.register(inputs=['d','a'],outputs=['e'])deff_my_function_2(d,a):returnd-a@graph.register(inputs=['c'],outputs=['d'])deff_my_function_1(c):returnc/10.@graph.register(inputs=['a','b'],outputs=['c'])deff_my_function_3(a,b):returna+bres=graph.calculate(data={'a':2,'b':3})print(res)

pyungo正在导入时注册函数。那么 解析DAG,并找出 函数必须根据其输入/输出运行。在这个 case,它将是函数3,然后是函数1,最后是函数2。

有序的Graphcalculate一起运行,并使用给定的 数据。它返回最后一个函数的输出 运行(e),但所有中间结果也可用 在graph实例中。

结果是(a+b)/10-a=-1.5

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java获取JEditorPane中字符的绝对位置   java Datetime:将时间段拆分为天、小时和分钟   java是使此HashMap更高效的一种方法   java项目reactor:collectList()之后的block()对Flux不起作用。创建()   java在Mac OSX上安装OpenCV   java递归地确定一组数字是否包含两个总和相等的子集   Quad2D曲线上的几何图形Java绘图箭头   java将SSL证书导入Glassfish 4。十、   java Android未找到处理Intent MediaScanner的活动   EclipseJava。安全cert.CertificateParsingException:java。木卫一。IOException:主题密钥,无法创建EC公钥   java我能在O(M log N)时间内完成吗?   java跟踪eclipse中的资源更改也在中。元数据和。项目   java如何完全禁用Android键盘   java返回到上一个活动