模块文档

并集、不相交并集和交集运算符的实现。

函数 disjoint_union 图的不相交并集。
函数 intersection 图的交集。
函数 name_set 将名称列表转换为名称集合,同时检查重复项。
函数 union 图的并集。
def disjoint_union(graphs): (源)

图的不相交并集。

创建两个或多个图的不相交并集。

此函数保留所有图的属性。所有图、顶点和边的属性都复制到结果中。如果一个属性存在于多个图中并会导致名称冲突,则通过添加后缀(例如 _1, _2 等)来重命名此属性。

如果某些输入图是有向的而另一些是无向的,则会生成错误。

参数
graphs图列表。不接受惰性序列。
返回
不相交并集图
def intersection(graphs, byname='auto', keep_all_vertices=True): (源)

图的交集。

创建两个或多个图的交集。图可以具有相同或重叠的顶点集。包含在所有图中的边将成为新图的一部分。

此函数保留所有图的属性。所有图、顶点和边的属性都复制到结果中。如果一个属性存在于多个图中并会导致名称冲突,则通过添加后缀(例如 _1, _2 等)来重命名此属性。

name顶点属性在根据符号顶点名称执行操作时会得到特殊处理。在这种情况下name必须存在于所有图中,并且在结果图中不会被重命名。

如果某些输入图是有向的而另一些是无向的,则会生成错误。

参数
graphs图列表。不接受惰性序列。
byname布尔值或'auto',指定函数对命名顶点(即具有'name'属性的顶点)的行为。如果为False,则忽略顶点名称。如果为True,则根据名称合并顶点。如果为'auto',则在所有图都具有命名顶点时使用True,否则使用False(在后一种情况下也会生成警告)。
keep_all_vertices布尔值,指定是否应在交集中保留未出现在所有图中的顶点。
返回
交集图
引发
RuntimeError如果'byname'设置为True且某些图未命名或其中一个图中的名称集不唯一
def name_set(names): (源)

将名称列表转换为名称集合,同时检查重复项。

参数
names要转换的名称列表
返回
列表中出现的唯一名称集合
引发
RuntimeError如果输入名称列表包含重复项
def union(graphs, byname='auto'): (源)

图的并集。

创建两个或多个图的并集。图可以具有相同或重叠的顶点集。包含在至少一个图中的边将成为新图的一部分。

此函数保留所有图的属性。所有图、顶点和边的属性都复制到结果中。如果一个属性存在于多个图中并会导致名称冲突,则通过添加后缀(例如 _1, _2 等)来重命名此属性。

name顶点属性在根据符号顶点名称执行操作时会得到特殊处理。在这种情况下name必须存在于所有图中,并且在结果图中不会被重命名。

如果某些输入图是有向的而另一些是无向的,则会生成错误。

参数
graphs图列表。不接受惰性序列。
byname布尔值或'auto',指定函数对命名顶点(即具有'name'属性的顶点)的行为。如果为False,则忽略顶点名称。如果为True,则根据名称合并顶点。如果为'auto',则在所有图都具有命名顶点时使用True,否则使用False(在后一种情况下也会生成警告)。
返回
并集图
引发
RuntimeError如果'byname'设置为True且某些图未命名或其中一个图中的名称集不唯一