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