如何从列表中随机选择一个而不给我重复项? [重复]

问题描述 投票:0回答:1

初学者,如果不清楚,请见谅。 基本上我有这个来随机选择测验问题:

import random

econ = ["eq1", "eq2", "eq3", "eq4", "eq5", "eq6", "eq7", "eq8"]
mil = ["mq1", "mq2", "mq3", "mq4", "mq5", "mq6", "mq7", "mq8"]
oro = ["oq1", "oq2", "oq3", "oq4", "oq5", "oq6", "oq7", "oq8"]
pol = ["pq1", "pq2", "pq3", "pq4", "pq5", "pq6", "pq7", "pq8"]

cats = [econ,mil, oro, pol]
 
for x in cats:
        for y in range(3):
            print(random.choice(x))

但是,我有时会得到重复的内容,例如: 等式 3 <- here eq3 <- here eq1 mq5 mq7 mq2 oq1 oq4 oq5 pq3 pq7 pq2

我浏览了论坛和Python编码书,但找不到不让我困惑的东西!

TL;DR:如何避免代码中随机项的重复?

python list random
1个回答
-1
投票

将随机选择保存到数组中,并检查数组中是否已存在新选择。

© www.soinside.com 2019 - 2024. All rights reserved.