我的目标是从列表中随机抽取一个样本,然后从新列表中抽取一个样本,直到列表中仅剩一个项目为止。
代码:
TABLE_2(FRUIT, START_RANGE, END_RANGE)
答案 0 :(得分:0)
您可以使用for
循环:
from random import sample, seed
seed(0) # set the seed
chosen = [exampleList[:]] # start with a copy of the original list
for n in range(len(exampleList)-1, 0, -1):
chosen.append(sample(chosen[-1], n)) # successively append samples
print(chosen)
#[['Gary', 'Kerry', 'Larry', 'Bob', 'Frank', 'Joshua'],
# ['Bob', 'Joshua', 'Gary', 'Kerry', 'Larry'],
# ['Kerry', 'Gary', 'Joshua', 'Larry'],
# ['Gary', 'Joshua', 'Kerry'],
# ['Joshua', 'Gary'],
# ['Joshua']]
您初始化输出列表以包含原始列表的副本。然后从n
到len(exampleList) - 1
循环1
的值,并从输出列表的最后一个元素中获取该大小的样本。
答案 1 :(得分:0)
您可以使用while
循环:
ret = []
while len(exampleList) > 1:
ret.append(exampleList)
exampleList = reduce(exampleList)
ret.append(exampleList)