我有一个25个问题的列表,我想随机选择7.问题列表将在IRC客户端(文本)。以下是我目前所提出的问题以及我从列表中随机化7的建议过程的示例。
我想做
questions=[
'Finish this poem "Roses are red Violets are ..."',
'What is your favorite food?','Stones or Beatles?',
'favorite pet?',
'favorite color?',
'favorite food?'
]
for q in xrange(3):
question = ''
while question not in questions:
# this is where I'm stuck
我想要像。
最终结果将是来自25个人的10个问题。
答案 0 :(得分:1)
您可以使用shuffle()
:
from random import shuffle
shuffle(questions)
for question in questions[:7]:
answer = input(question)
# do something with answer
答案 1 :(得分:0)
使用random.sample()
:
import random
for question in random.sample(questions, 7):
answer = input(question)
但是,你需要有足够的问题。现在,您在列表中只有六个问题,因此random.sample()
无法提出七个随机问题。我假设您的真实列表有25个问题,因为您说from a pool of 25
,所以我只是评论。
答案 2 :(得分:0)
一种好方法可以使用random.sample
。
>>> from random import sample
>>> items = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm']
>>> selected = []
>>> for item in sample(items, 7):
... selected.append(item)
>>> print selected
['h', 'l', 'j', 'm', 'i', 'e', 'c']