python - 如何确保 random.choice() 不会选择同一项目两次?

标签 python python-3.x tkinter

我正在做一个测验。这意味着我必须为列表生成随机问题,但我需要确保问题不会重复。我正在使用 Python 3.1.4,但我不知道如何确保它检查字符串是否尚未生成。我用来生成字符串的代码是:

generated_question = random.choice(question_list)

最佳答案

不要使用choice,而是考虑使用shuffle.pop:

question_order = question_list[:] # make a copy of the input list
random.shuffle (question_order)
for i in range(5):
    print(question_order.pop())

这将打印出五个没有重复的问题(假设列表中至少有那么多问题)。

关于python - 如何确保 random.choice() 不会选择同一项目两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26316758/

相关文章:

python - pygame.错误: set_pos unsupported for this codec

python - 如何让pytest重写非测试模块中的assert

Python 错误日志位置

python - 在一定时间后调用函数并在按下按钮时终止,tkinter

python - 停止 shutil.make_archive 向自身添加存档

python - 如何在没有 "while True"循环的情况下绘制这个对数?

Python/Tkinter - 单击时识别对象

python - 结束行未使用 re library python 正确解析

Python:帮助以不同的方式编写这个程序。匹配字符串。既精确又相差一个字符

Python3 json.dumps 给出 TypeError : keys must be a string