在网络内部,信息(包)可以传递给不同的节点(主机),通过修改其内容可以承载不同的含义。最终的包取决于主机通过给定的网络路由输入。
现在我想实现一个计算网络模型,可以通过给出不同的计算路径来做一些小工作。
原型:
def a(p): return p + 1
def b(p): return p + 2
def c(p): return p + 3
def d(p): return p + 4
def e(p): return p + 5
def link(p, r):
p1 = p
for x in r:
p1 = x(p1)
return p1
p = 100
route = [a,c,d]
result = link(p,result)
#========
target_result = 108
if result = target_result:
# route is OK
我想最后我需要这样的东西:
p with [init_payload, expected_target, passed_path, actual_calculated_result]
|
\/
[CHAOS of possible of functions networks]
|
\/
px [a,a,b,c,e] # ok this path is ok and match the target
以下是我的问题,希望能得到您的帮助:
可以
p
通过检查函数和估计结果来携带(确定)路线吗?</p>(1.1) 例如,如果路线上有一个节点
x()
def x(p): return x / 0 # I suppose it can pass the compile
能
p
以某种方式知道这条路径不好然后避免选择这条路径吗?(1.2) 另一个困惑是如果
p
是自定义的类类型,这个类里面的payload本质上是一个字符串,当它带有路径[a,c,d]时,可以p
知道a()
must带有一个int类型然后避免选择这个节点?生成路径时与1.2相同,我可以避免这样的oops吗
def a(p): 返回 p + 1
def b(p): 返回 p + 2
def x(p): 返回 p.append(1)
def y(p): 返回 p.append(2)
full_node_list = [a,b,x,y]
path = random(2,full_node_list) # oops x,y 对于 inttype P 来说会很麻烦,而 a,b 在 list 类型上会很麻烦。请考虑路径是否是函数的 lambda 列表
PS:由于整个模型在我的脑海中不是很清楚,任何领导和指导将不胜感激。
谢谢!