如何使用Python随机丢弃集合中的多个元素?

Saj*_*uuk 1 python set data-structures

例如,我有这个Set对象:

a = {0,1,2,3,4,5}

如何从这个集合中随机删除固定数量的元素?

Ama*_*dan 7

要删除2个随机元素,请对2个随机元素进行采样,然后将其删除:

a.difference(random.sample(a, 2))
Run Code Online (Sandbox Code Playgroud)

或者只是采样小于集合大小的两个元素:

set(random.sample(a, len(a) - 2))
Run Code Online (Sandbox Code Playgroud)

如果您想要破坏性操作(以便a更改),您可以使用difference_update它来代替:

a.difference_update(random.sample(a, 2))
Run Code Online (Sandbox Code Playgroud)