使用Python创建新图并删除旧图

时间:2017-10-30 02:20:21

标签: python

我有使用Louvain算法进行图聚类的代码。在第二阶段,我必须从旧图创建一个新图,因此新图中的节点表示第一阶段中的节点集群。这是我的代码:

class Vertex:
    def __init__(self,n):
        self.name=n
        self.description=str
        self.maxV1=int
        self.maxV2=int
        self.neighbors=list()

        def add_neighbor(self,v):
        if v not in self.neighbors:
            self.neighbors.append(v)
           #self.neighbors.sort()

class Graph:
    verticies={}

    def add_vertex(self,vertex):

        if isinstance(vertex,Vertex) and vertex.name not in self.verticies:

            self.verticies[vertex.name]=vertex
            return True
        else:
            return False
    def add_edge(self,u,v):
        if u in self.verticies and v in self.verticies:
            for key, value in self.verticies.items():
               if key==u:
                  value.add_neighbor(v)
               if key ==v:
                  value.add_neighbor(u)
            return True
        else:
            return False

问题是在创建类Graph的新实例并添加节点和边时,它们将与旧图一起添加。我想在新图表中添加新节点。

0 个答案:

没有答案