cycler.Cycler¶
- class cycler.Cycler(left: Cycler[K, V] | Iterable[dict[K, V]] | None, right: Cycler[K, V] | None = None, op: Any = None)[源代码]¶
可组合的循环器。
此类具有组合方法
+
用于 ‘内部’ 乘积 (zip)
+=
就地
+
*
用于外部乘积 (
itertools.product
) 和整数乘法*=
就地
*
并支持通过
[]
进行基本切片。- 参数:
- left, rightCycler 或 None
“左”和“右”循环器。
- op函数或 None
组合“左”和“右”循环器的函数。
- __init__(left: Cycler[K, V] | Iterable[dict[K, V]] | None, right: Cycler[K, V] | None = None, op: Any = None)[源代码]¶
半私有初始化。
请勿直接使用此方法,而应使用
cycler
函数。
方法
__init__
(left[, right, op])半私有初始化。
by_key
()按键取值。
change_key
(old, new)将此循环器中的键更改为新名称。
concat
(right)连接
Cycler
,就像使用itertools.chain
链接一样。simplify
()将循环器简化为循环器的总和(但没有乘积)。
属性
此 Cycler 知道的键。
- by_key() dict[K, list[V]] [源代码]¶
按键取值。
这将返回循环器的转置值。 迭代
Cycler
会产生每个键只有一个值的字典,此方法返回一个dict
的list
,它们是给定键的值。返回值可用于仅使用
+
创建等效的Cycler
。- 返回:
- transposedict
每个键的值的列表字典。
- change_key(old: K, new: K) None [源代码]¶
将此循环器中的键更改为新名称。修改是就地执行的。
如果旧键与新键相同,则不执行任何操作。如果新键已是键,则引发 ValueError。如果旧键不是键,则引发 KeyError。