【问题标题】:Python 3, NetworkX - Graph node key list is not displaying repeated edgesPython 3,NetworkX - 图形节点键列表不显示重复边
【发布时间】:2012-07-07 02:20:45
【问题描述】:

我在 Python 3.2.3 上使用 NetworkX 模块。在两个节点之间具有多条边的多重图 G 中 - 比如说,'a' 和 'b' 之间有三条边 - 在 IDLE 提示符中键入 G['a'].keys() 会返回一个出现 'b' 的 dict_keys 列表只有一次。有什么方法可以使“b”出现的次数与两个节点之间的边一样多?

【问题讨论】:

    标签: python graph python-3.x networkx


    【解决方案1】:

    类似

    [(k, len(v)) for k, v in G['a'].items()]
    

    【讨论】:

    • 帮了大忙,非常感谢!这个问题搞砸了我对 MinCut 问题的解决方案的实施。
    【解决方案2】:

    NetworkX API 建议您使用 G.neighbors(),但对于只会给出唯一邻居的多重图。

    如果你想要所有邻居,你可以使用 [v for u,v in G.edges_iter()],例如

    In [1]: import networkx as nx
    
    In [2]: G=nx.MultiGraph()
    
    In [3]: G.add_edge('a','b')
    
    In [4]: G.add_edge('a','b')
    
    In [5]: G.add_edge('a','b')
    
    In [6]: [v for u,v in G.edges_iter()]
    Out[6]: ['b', 'b', 'b']
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-28
      • 2013-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-08
      • 2011-08-06
      • 1970-01-01
      相关资源
      最近更新 更多