Python如何从多个列表分别随机抽样并合并为新列表?
简洁实现
无需定义x、y中间变量,直接拼接两次抽样的返回结果即可,一行代码完成全部操作:c = random.sample(a, 3) + random.sample(b, 3)
可扩展写法
如果后续需要对更多列表执行相同数量的抽样,可使用列表推导式简化多场景复用:c = [sample for lst in [a, b] for sample in random.sample(lst, 3)]
可选调整
如果不需要保持「a列表抽样结果在前、b列表抽样结果在后」的顺序,想要合并后的列表整体随机打乱,可以额外调用random.shuffle对结果列表原地打乱:
c = random.sample(a, 3) + random.sample(b, 3) random.shuffle(c)
内容的提问来源于stack exchange,提问作者oOinsaneOo
相关产品推荐
相关产品推荐

