generic_multiedge_match#

generic_multiedge_match(attr, default, op)[source]#

返回一个用于通用属性的比较函数。

使用指定的运算符比较属性的值。如果所有属性都相等,则构造的函数返回 True。请注意,构造的 edge_match 函数可能会很慢,因为它在返回 False 之前必须验证多重边之间不存在同构关系。

参数:
attrstring | list

要比较的边属性,或要比较的节点属性列表。

defaultvalue | list

边属性的默认值,或边属性的默认值列表。

opcallable | list

比较属性值时使用的运算符,或比较每个属性值时使用的运算符列表。

返回值:
matchfunction

定制的通用 edge_match 函数。

示例

>>> from operator import eq
>>> from math import isclose
>>> from networkx.algorithms.isomorphism import generic_node_match
>>> nm = generic_node_match("weight", 1.0, isclose)
>>> nm = generic_node_match("color", "red", eq)
>>> nm = generic_node_match(["weight", "color"], [1.0, "red"], [isclose, eq])