import random
def random_order(some_list):
order = list(range(len(some_list)))
random.shuffle(order)
for i in order:
yield some_list[i]
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for item in random_order(my_list):
... # do stuff
或者,您可以这样使用:
order = random_order(my_list)
some_item = next(order)
some_item = next(order)
...
创建从上一个生成的选项进行检查的生成器:
如果您无论如何都需要它们,只是希望它们以随机顺序排列(但您不想更改列表),或者如果您对要采样的项目数没有上限(列表大小除外):
或者,您可以这样使用:
如果要从列表中获得不同的随机值,请使用
random.sample(list, n)
。你知道吗相关问题 更多 >
编程相关推荐