我目前正在尝试创建一个程序,它从列表中为用户每次随机选择两个项目进行比较,不包括两次比较两个项目或相同的项目本身。列表中的Random.Choice从不比较两个列表元素两次(Python)
list1 = ['item1', 'item2', 'item3', 'item4', 'item5']
在list1
,我想用一个random.choice:
item_chosen = random.choice(list1)
print(item_chosen)
item_chosen2 = random.choice(list1)
print(item_chosen2)
这里的问题是,item_chose
可能是相同的item_chosen2
,那如果我设置一个循环,同样的比较将不止一次。此外,当所有列表项目已相互比较时,程序需要实现(在每个组合中,手动编码所有多个项目之间的比较将花费太长时间)。
非常感谢你nneonneo,我会random.sample使用,而不是random.choice – Joseph
'random.sample'不会删除项目从列表中。随后的通话可以选择已经选择的项目,因此可以选择两个项目两次。 –
您可以使用random.sample并从主列表中删除项目。但是如果您的原始列表包含重复项,您将得到相同的编号 – Anurag