random.sample可以处理k=0的情况吗?

问题描述 投票:0回答:1

在代码中,我可以假设:

assert random.sample((1,2,3), k=0) == []

我怀疑答案是肯定的,但我没有看到明确的文档证实这一点。

我有一个案例,其中

k = desired_length - current_length
是我需要添加到现有列表中的额外随机元素的数量。我想确定我不需要特殊情况来处理
desired_length == current_length
(错误情况
desired_length < current_length
已经处理)。

python random
1个回答
1
投票

它并不明确,文档指出“返回从总体序列中选择的唯一元素的 k 长度列表。”。所以预计会返回一个0长度的列表。

下面的代码返回一个 0 长度的列表,如文档中所述。

import random
assert( random.sample((1,2,3), k=0) == [] )
random.sample((1,2,3), k=0)

https://python-fiddle.com/saved/MkQtCxYBKHYIG2kJCSQc?run=true

© www.soinside.com 2019 - 2024. All rights reserved.