【发布时间】:2017-09-19 07:27:55
【问题描述】:
我有一个如上的树形图:
我的数据:Vnew =[12,13,14,15,16] - 没有可用的坐标
`V =[1,2,3,4,5,6,7,8,9,10,11]`
- 此列表中的每个点都有一个预定义的坐标。
我需要什么:
1)以变量的形式为Vnew中的每个点分配坐标;例如:
newpos = {(x0,y0):12,(x1,y1):13,(x2,y2):14,(x3,y3):15,(x4,y4):16}
这里每个(xi,yi) 都是一个变量。
2) 我需要将函数定义为每个有边的点之间的欧几里得距离的总和。对于给定的示例,我的函数将是
`f(x,y) = ED(12,13)+ED(13,3)+ED(12,15)+ED(15,10)`
其中x =[x0,x1,x2,x3] 和y =[y0,y1,y2,y3] 和ED 是欧几里得距离。
我尝试将变量分配为
Vnew = [12,13,14,15,16]
d = {}
for v in Vnew:
for i in range(5):
d[('x' + str(i),'y' + str(i))]= v
print (d)
但这给了我一些不正确的东西。
{('x0', 'y0'): 12, ('x1', 'y1'): 12, ('x2', 'y2'): 12, ('x3', 'y3'): 12, ('x4', 'y4'): 12}
{('x0', 'y0'): 13, ('x1', 'y1'): 13, ('x2', 'y2'): 13, ('x3', 'y3'): 13, ('x4', 'y4'): 13}
{('x0', 'y0'): 14, ('x1', 'y1'): 14, ('x2', 'y2'): 14, ('x3', 'y3'): 14, ('x4', 'y4'): 14}
{('x0', 'y0'): 15, ('x1', 'y1'): 15, ('x2', 'y2'): 15, ('x3', 'y3'): 15, ('x4', 'y4'): 15}
{('x0', 'y0'): 16, ('x1', 'y1'): 16, ('x2', 'y2'): 16, ('x3', 'y3'): 16, ('x4', 'y4'): 16}
有人可以帮我做这两件事吗?
【问题讨论】:
标签: python-3.x function variables