这个模块为面向目标的编程范例提供了一个简单的工具。

goal_oriented的Python项目详细描述


这个模块为面向目标的编程范例提供了一个简单的工具。

在面向目标的编程中,程序员将问题细分为次要目标,
它们之间有依赖关系,只需将它们传递给将
以正确的顺序异步执行它们。

===

在此实现中,每个目标函数都接收三个参数:
name——目标的唯一名称
args——依赖关系的结果
结果——一个字典,它可以在其中写入返回值
(可通过子类目标阅读)

模块文件中包含的测试说明了必须如何使用模块。

===

用法示例:

“用法示例”

def goal1(名称、参数、结果):
打印名称、参数
睡眠(1)
结果[名称]=名称+“已完成!”

定义目标2(名称、参数、结果):
打印名称、参数
睡眠(2)
结果[名称]=名称+“已完成!”

def goal3(名称、参数、结果):
打印名称、参数
睡眠(2)
结果[名称]=名称+“已完成!”

def goal4(名称、参数、结果):
打印名称、参数
睡眠(1)
结果[名称]=名称+“已完成!”

def goal5(名称、参数、结果):
打印名称、参数
睡眠(3)
结果[名称]=名称+“已完成!”

定义目标6(名称、参数、结果):
打印名称、参数
睡眠(1)
结果[名称]=名称+“已完成!”

要运行的目标及其依赖关系
计划目标(goal1={'target':goal1},
goal2={“目标”:goal2},
goal3={“目标”:goal3,'deps':['goal1','goal2']},
goal4={“目标”:goal4,'deps':['goal3']},
goal5={“目标”:goal5,'deps':['goal2']},
目标6={“目标”:目标6})

===

示例输出:

$python goal_oriented.py面向

目标6{}
目标2{}
目标1{}
goal5{goal2':'goal2已完成!'}
goal3{goal2':'goal2已完成!',“goal1”:“goal1已完成!”}
goal4{goal3':'goal3已完成!'}

真实的0m5.018s
用户0.104s
系统0m0.052s

===

玩得开心……:)

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

推荐PyPI第三方库


热门话题
javascript问题:通过URL用网站数据填充Textview   java TabLayout Android,如何用几个标签填充整个屏幕宽度,并用大量标签滚动?   Eclipse Java运行的文件不再存在于我的工作区中   安装两个Java版本时,使用Java的windows链接不起作用   java将多个图形添加到单个JPanel   java Kafka ConsumerFactory,带有两个Desiarizer   使用反射更改java类超类   当一致性测试失败时,java有没有办法让堆栈跟踪显示在控制台中   java映射到基元类型的HashMap的快速替代方案是什么?   java关闭一个jframe所有剩余的打开jframe都将关闭。   java为什么不推荐“使用getString()获取设备标识符”?   java值比较和值赋值之间有什么性能差异吗?   Java实体数组到JavaScript数组   java使用流将一个列表转换为另一个列表   在JTree中保存对象,但更改显示的名称(java swing)?   java“Hello world”Android应用程序,文件尽可能少,没有IDE,只有文本编辑器   java在方法之间传递值   java如何为项目数组创建ParseQuery?