Python 和 igraph deepcopy : object. __new__(igraph.Edge) 不安全,使用 igraph.Edge.__new__()

标签 python igraph

我正在尝试像这样深度复制我的 igraph 对象:

copy.deepcopy(graph)

其中 graph 是 igraph 对象,一个只有几个顶点的完整图。但是我得到这个错误:

      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/copy_reg.py", line 93, in __newobj__
        return cls.__new__(cls, *args)
    TypeError: object.__new__(igraph.Edge) is not safe, use igraph.Edge.__new__()

有谁知道问题是什么以及我应该如何复制 igraph 对象?

最佳答案

作为解决方法,您可以尝试对要复制的对象进行 pickle,然后将其取消 pickling 到另一个变量中:

from cPickle import dumps, loads
g2 = loads(dumps(g))

关于Python 和 igraph deepcopy : object. __new__(igraph.Edge) 不安全,使用 igraph.Edge.__new__(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23299583/

相关文章:

Python - 将 sock.recv 转换为字符串

python - celery-django 找不到设置

python - 如何用自定义 __len__() 过程替换类 @property 的 len(..) 返回值?

python - 以编程方式从存储库进行 pip install 会导致错误 "No such file or directory"

r - 如何从数据帧创建边缘列表(展开,group_by?)

python - 如何(可靠地)在嵌入式( headless )Linux 中读取 USB 条码扫描器?

python - 图形解析错误

python - 使用 igraph 高效计算具有 23000000 个节点的图的最短路径数

r - 如何修改该图的布局?

python - 将社区检测与图形或其他库重叠