我有这段代码来提取图表中从一个节点到另一个节点的最短路径
g = json_graph.node_link_graph(json.load(open("MPLS-topo.json")))
paths = nx.shortest_path(g, "H1", weight="weight")
for dest in paths.keys(): # Nicely output all those paths
if dest == "H2":
print "Shortest Path from H1 to {} is:".format(dest)
print "{}".format(paths[dest])
它的输出是
Shortest Path from H1 to H2 is:
['H1', u'S1', u'S2', u'S3', u'S5', u'H2']
我想删除你并将路径转换为像这样的字符串
H1-S1-S2-S3-S5-H2
我试过这个
path = [s.replace('u', '') for s in paths[dest]]
print path
y = "-".join(path)
但它给了我相同的输出。 我怎么能在python中做到这一点?
答案 0 :(得分:0)
请尝试将unicode转换为字符串格式的编码选项:
path = [s.encode('utf-8') for s in li]
print("-".join(path))
这应该可以提供所需的输出。