numpy.random.Generator.spawn#
方法
- random.Generator.spawn(n_children)#
创建新的独立子生成器。
有关生成子代(spawning children)的更多说明,请参阅 SeedSequence 生成。
版本 1.25.0 中新增。
- 参数:
- n_childrenint
- 返回:
- child_generatorslist of Generators
- 引发:
- TypeError
当底层 SeedSequence 不支持生成时。
另请参阅
random.BitGenerator.spawn,random.SeedSequence.spawn位生成器和种子序列上的等效方法。
bit_generator生成器使用的位生成器实例。
示例
从一个带种子的默认生成器开始
>>> # High quality entropy created with: f"0x{secrets.randbits(128):x}" >>> entropy = 0x3034c61a9ae04ff8cb62ab8ec2c4b501 >>> rng = np.random.default_rng(entropy)
创建两个新的生成器,例如用于并行执行
>>> child_rng1, child_rng2 = rng.spawn(2)
从每个生成器中抽取的数字是独立的,但源自初始播种的熵
>>> rng.uniform(), child_rng1.uniform(), child_rng2.uniform() (0.19029263503854454, 0.9475673279178444, 0.4702687338396767)
可以安全地从原始
rng或子代生成器中生成额外的子代>>> more_child_rngs = rng.spawn(20) >>> nested_spawn = child_rng1.spawn(20)