【发布时间】:2016-03-13 20:54:54
【问题描述】:
我需要一些关于图表的帮助。我使用模块 NetworkX,但了解它的所有内容并不重要。我是 Python 的初学者。我开始创建一个普通的图表:
import networkx as nx
G = nx.Graph()
G.add_edge("Node1","Node2",length=140,sf=4)
G.add_edge("Node2","Node3",length=170,sf=3)
G.add_edge("Node1","Node4",length=300,sf=1)
G.add_edge("Node4","Node3",length=230,sf=10)
x = input('First Node: ')
y = input('Second Node: ')
paths = sorted(nx.all_simple_paths(G,x,y))
print(paths)
我添加了 2 个属性:长度和 sf(我稍后会用到)。我运行了这个程序并得到了 Node1 和 Node3 这个:
[['Node1', 'Node2', 'Node3'], ['Node1', 'Node4', 'Node3']]
如何计算路径的长度?而且我需要将长度与属性“sf”相乘。我把问题简化了,因为后来我有几百个节点,所以会比较困难。
我开始考虑一个 for 函数,但我得到了错误。
【问题讨论】:
标签: python