Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

generic_edge_match

generic_edge_match(attr, default, op)[source]

Returns a comparison function for a generic attribute.

The value(s) of the attr(s) are compared using the specified operators. If all the attributes are equal, then the constructed function returns True.

Parameters:

attr : string | list

The edge attribute to compare, or a list of edge attributes to compare.

default : value | list

The default value for the edge attribute, or a list of default values for the edge attributes.

op : callable | list

The operator to use when comparing attribute values, or a list of operators to use when comparing values for each attribute.

Returns:

match : function

The customized, generic \(edge_match\) function.

Examples

>>> from operator import eq
>>> from networkx.algorithms.isomorphism.matchhelpers import close
>>> from networkx.algorithms.isomorphism import generic_edge_match
>>> nm = generic_edge_match('weight', 1.0, close)
>>> nm = generic_edge_match('color', 'red', eq)
>>> nm = generic_edge_match(['weight', 'color'], [1.0, 'red'], [close, eq])