我一直试图从NetworkX库导入必要的模块,但它一直在抛出ImportError或AttributeError。
我在最后一年的项目中使用了NetworkX库,我想使用这一功能来计算给定图的树宽分解,在其他函数之前我需要它的值。
我尝试了以下几点:
import networkx as nx
from networkx.algorithms import approximation
G = nx.barbell_graph(5, 1)
decom = approximation.treewidth_min_fill_in(G)但这只会给我带来以下错误:
AttributeError: module 'networkx.algorithms.approximation' has no attribute 'treewidth_min_fill_in'import networkx as nx
G = nx.barbell_graph(5, 1)
decom = nx.algorithms.approximation.treewidth.treewidth_min_fill_in(G) 但这只会给我带来以下错误:
AttributeError: module 'networkx.algorithms.approximation' has no attribute 'treewidth'import networkx as nx
from networkx.algorithms.approximation import treewidth
G = nx.barbell_graph(5, 1)
decom = treewidth.treewidth_min_fill_in(G)但这只会给我带来以下错误:
ImportError: cannot import name 'treewidth'我还没有找到解决办法。任何帮助都是非常感谢的!
注:这是我的第一个问题,因此,请提供任何关于这个问题的形式的补充反馈。
发布于 2019-04-13 14:31:06
您使用的是哪个版本的networkx包,以及如何安装它?
我尝试过执行pip install networkx,然后用Python3.7执行您的代码:
import networkx as nx
from networkx.algorithms import approximation
G = nx.barbell_graph(5, 1)
decom = approximation.treewidth_min_fill_in(G)
print(decom)产出如下:
(4, <networkx.classes.graph.Graph object at 0x1070d4ef0>)您可以使用以下方法尝试查看模块的版本:
import networkx
print(networkx.__version__)采用了哪些方法:
import networkx
from networkx.algorithms import approximation
print(dir(approximation))发布于 2019-04-13 14:45:47
如果已经安装了networkx,则运行pip install networkx或pip install --upgrade networkx,然后使用Python3.7执行代码:
import networkx
from networkx.algorithms.approximation import treewidth
treewidth.treewidth_min_fill_in()
这在我的系统上很好。希望这能解决你的问题
https://stackoverflow.com/questions/55666478
复制相似问题