我正在尝试在 python 中编写以下代码。
g = networkx.Digraph()
g.add_edge(1,2,x = 2)
这里的“x”是一个变量。但 networkx 似乎将此作为属性的名称。我需要将 x 内部的内容作为属性的名称传递。我该怎么做?
g = networkx.Digraph()
g.add_edge(1, 2, **{x: 2})
了解如何在 Python 中使用 *args 和 **kwargs。或者,networkx
也允许您直接将其作为字典提供:
g.add_edge(1, 2, {x: 2})
add_edge
需要一个dict
for 属性。您只需将属性/值对放在 a 中dict
:
g.add_edge(1, 2, {x:2})
# or more explicitly
g.add_edge(1, 2, attr_dict={x:2})
例子:
In [25]: g = networkx.DiGraph()
In [26]: x = 'some string'
In [27]: g.add_edge(1, 2, {x:2})
In [28]: g[1][2]
Out[28]: {'some string': 2}