在python中逐个打印图形的所有元素

在python中逐个打印图形的所有元素,python,graph-traversal,Python,Graph Traversal,我尝试用python在这个算法中遍历一个图。我应该做什么改变 如果我想一个接一个地打印图形的所有元素,或者遍历整个图形,那么就进行make 图表 任何帮助都将不胜感激。谢谢 grapth={'A': ['B', 10, 'B', 10, 'B', 10, 'C', 15], 'C': [1001, 'OUT'], 'B': [1000, 'IN', 1000, 'IN']} print "Path:",find_all_paths(Portdic

我尝试用python在这个算法中遍历一个图。我应该做什么改变 如果我想一个接一个地打印图形的所有元素,或者遍历整个图形,那么就进行make 图表

任何帮助都将不胜感激。谢谢

       grapth={'A': ['B', 10, 'B', 10, 'B', 10, 'C', 15], 'C': [1001, 'OUT'], 'B':   
       [1000, 'IN', 1000, 'IN']}

       print "Path:",find_all_paths(Portdict1,'A','IN')



 def find_all_paths(graph, start, end, path=[]):
    path = path + [start]
    if start == end:
        return [path]
    if not graph.has_key(start):
        return []
    paths = []
    for node in graph[start]:
        if node not in path:
            newpaths = find_all_paths(graph, node, end, path)
            for newpath in newpaths:
                paths.append(newpath)
    return paths
你的“图”是一个字典,Python中的字典是无序的,如果你想使用,你可以从模块中导入它

订购证明:

>>> for key, value in graph.items():
    print key, value


A ['B', 10, 'B', 10, 'B', 10, 'C', 15]
C [1001, 'OUT']
B [1000, 'IN', 1000, 'IN']
请注意,由于初始代码的键顺序为“A、C、B”,因此它们将与OrderedICT保持一致

>>> for key, value in graph.items():
    print key, value


A ['B', 10, 'B', 10, 'B', 10, 'C', 15]
C [1001, 'OUT']
B [1000, 'IN', 1000, 'IN']