Random.shuffle 令人惊讶的是在循环内不起作用
Random.shuffle surprisingly doesn't work inside loop
Random.shuffle 令人惊讶的是在循环内不起作用,它总是产生相同的随机列表,但我需要 19 个 不同的 列表:
for i in range(19):
random.seed() #random.randint(1, 50)
random.shuffle(candidates_random_list)
random.seed()
candidates_full_list.append(candidates_random_list)
print('candidates_full_list ----- \n\n ')
pprint(candidates_full_list)
我看了很多教程,预计 seed() 会解决这个问题,但我认为这是不当行为。每 运行 它随机播放,但不循环播放。
shuffle
就位,您的列表包含 19 个对同一列表的引用,而不是每次随机播放产生的单独列表。
改为存储随机列表的副本。
for i in range(19):
random.shuffle(candidates_random_list)
candidates_full_list.append(candidates_random_list[:])
Random.shuffle 令人惊讶的是在循环内不起作用,它总是产生相同的随机列表,但我需要 19 个 不同的 列表:
for i in range(19):
random.seed() #random.randint(1, 50)
random.shuffle(candidates_random_list)
random.seed()
candidates_full_list.append(candidates_random_list)
print('candidates_full_list ----- \n\n ')
pprint(candidates_full_list)
我看了很多教程,预计 seed() 会解决这个问题,但我认为这是不当行为。每 运行 它随机播放,但不循环播放。
shuffle
就位,您的列表包含 19 个对同一列表的引用,而不是每次随机播放产生的单独列表。
改为存储随机列表的副本。
for i in range(19):
random.shuffle(candidates_random_list)
candidates_full_list.append(candidates_random_list[:])