module documentation

无法归类到其他任何地方的实用函数。

multidict 一个类似于字典的对象,专门用于处理同一键的多个值。
函数 consecutive_pairs 返回给定可迭代对象中的连续项对。
函数 dbl_epsilon 近似双精度浮点数的机器epsilon值。
函数 deprecated 打印与某些igraph功能弃用相关的警告信息。
函数 named_temporary_file 创建一个命名临时文件并返回其名称的上下文管理器。
函数 numpy_to_contiguous_memoryview 将NumPy数组或矩阵转换为适合传递给Graph构造函数的连续内存视图对象。
函数 rescale 将一组数字重新缩放到给定范围内。
函数 safemax 更安全的max()变体,如果可迭代对象为空,则返回默认值。
函数 safemin min() 的安全变体,如果可迭代对象为空,则返回默认值。
函数 _is_running_in_ipython 内部函数,用于确定igraph是否在IPython中运行。
def consecutive_pairs(iterable, circular=False): (source)

返回给定可迭代对象中的连续项目对。

circularTrue 时,包含最后一个和第一个元素的组合也会被返回。

示例:

>>> list(consecutive_pairs(range(5)))
[(0, 1), (1, 2), (2, 3), (3, 4)]
>>> list(consecutive_pairs(range(5), circular=True))
[(0, 1), (1, 2), (2, 3), (3, 4), (4, 0)]
>>> list(consecutive_pairs([]))
[]
>>> list(consecutive_pairs([], circular=True))
[]
>>> list(consecutive_pairs([0]))
[]
>>> list(consecutive_pairs([0], circular=True))
[(0, 0)]
def dbl_epsilon(): (source)

近似计算双精度浮点数的机器epsilon值。

def deprecated(message): (source)

打印与某些igraph功能弃用相关的警告信息。

@contextmanager
def named_temporary_file(*args, **kwds): (source)

上下文管理器,创建一个命名的临时文件并返回其名称。

所有参数都传递给 tempfile.mkstemp,请参阅其文档以获取更多信息。

def numpy_to_contiguous_memoryview(obj): (source)

将NumPy数组或矩阵转换为适合传递给Graph构造函数的连续内存视图对象。

这是内部使用的,允许我们在构建图时直接使用NumPy数组或矩阵。

def rescale(values, out_range=(0.0, 1.0), in_range=None, clamp=False, scale=None): (source)

将一组数字重新缩放到给定范围内。

out_range 给出了输出值的范围;默认情况下,列表中的原始数字的最小值将被映射到输出范围的第一个元素,最大值将被映射到第二个元素。输入列表中最小值和最大值之间的元素将在输出范围的第一个和第二个值之间线性插值。

in_range 可用于覆盖哪些数字被映射到输出范围的第一个和第二个值。这也必须是一个元组,其中第一个元素将被映射到输出范围的第一个元素,第二个元素将被映射到第二个元素。

如果 clampTrue,重新缩放后超出给定 out_range 的元素将被限制在输出范围内,以确保结果中没有数字会超出 out_range

如果 scale 不是 None,它将被调用以处理 values 的每个元素, 并且重新缩放将在结果上进行。这可以用于,例如,转换原始值的对数而不是 实际值。一个典型的用例是将一系列值映射到对数尺度上的颜色标识符。如果存在, 缩放也适用于 in_range 参数。

示例:

>>> rescale(range(5), (0, 8))
[0.0, 2.0, 4.0, 6.0, 8.0]
>>> rescale(range(5), (2, 10))
[2.0, 4.0, 6.0, 8.0, 10.0]
>>> rescale(range(5), (0, 4), (1, 3))
[-2.0, 0.0, 2.0, 4.0, 6.0]
>>> rescale(range(5), (0, 4), (1, 3), clamp=True)
[0.0, 0.0, 2.0, 4.0, 4.0]
>>> rescale([0]*5, (1, 3))
[2.0, 2.0, 2.0, 2.0, 2.0]
>>> from math import log10
>>> rescale([1, 10, 100, 1000, 10000], (0, 8), scale=log10)
[0.0, 2.0, 4.0, 6.0, 8.0]
>>> rescale([1, 10, 100, 1000, 10000], (0, 4), (10, 1000), scale=log10)
[-2.0, 0.0, 2.0, 4.0, 6.0]
参数
values未记录
out_range输出值的范围
in_range输入值的范围;这是映射到out_range的范围。None表示分别使用输入的最小值和最大值。
clamp指定当输入值超出in_range时的处理方式。 True表示将值限制在in_range的范围内, False表示不进行限制。
scale在将输入值映射到输出范围之前,可选的转换操作。
def safemax(iterable, default=0): (source)

max() 的安全变体,如果可迭代对象为空,则返回默认值。

示例:

>>> safemax([-5, 6, 4])
6
>>> safemax([])
0
>>> safemax((), 2)
2
def safemin(iterable, default=0): (source)

min() 的安全变体,如果可迭代对象为空,则返回默认值。

示例:

>>> safemin([-5, 6, 4])
-5
>>> safemin([])
0
>>> safemin((), 2)
2
def _is_running_in_ipython(): (source)

内部函数,用于确定igraph是否在IPython内部运行。