list = ['john','james','michael','david','william']
如何从列表中删除随机元素,它在Python
winner = []
添加到另一个列表如何从list
删除随机项,并把它添加到winner
?
list = ['john','james','michael','david','william']
如何从列表中删除随机元素,它在Python
winner = []
添加到另一个列表如何从list
删除随机项,并把它添加到winner
?
winner.append(list.pop(random.randrange(0,len(list))))
要打破下来:
random.randrange(0,len(list))
会产生零之间,然后将列表包容的长度的随机数。这将在您的列表中生成一个随机索引,您可以参考。
list.pop(i)
这会从列表中删除指定索引(i)处的项目。
winner.append(x)
这会将项目(x)添加到获胜者列表的末尾。如果你想添加项目在一个特定的索引,您可以使用
winner.insert(i,x)
与我是索引插入在和x是插入的值。
如果您想了解更多信息,一个很好的参考,对数据结构的Python文档: https://docs.python.org/2/tutorial/datastructures.html
'list.pop'从末尾开始,而不是一个特定的索引 –
@ cricket_007检出我引用的python文档,如果未指定索引,则返回最后一个元素,否则返回指定索引处的元素 – PrestonM
I只是指出你没有在你的回答中提供参数 –
这将从名称列表names
中选择一个随机项目,并将其添加到另一个列表winner
。然后从names
中删除所选的获胜者。
import random
winner = []
names = ['john','james','michael','david','william']
winnerindex = random.randint(0,len(names)-1)
winner.append(names[winnerindex])
del names[winnerindex]
print winner, names
问题到底是什么,你想要我详细说明一下吗? @J F – ImportanceOfBeingErnest
是的,所以这段精彩的代码非常复杂,并且使用了很多鲜为人知的概念,因此只有少数用户能够理解它,而无需页面冗长的文档。 – ImportanceOfBeingErnest
只需使用random.randint从指数0到LEN(列表)来获取列表元素的索引,并将其追加到赢家。
import random
index = random.randomint(0, len(list)-1)
winner.append(list[index])
del list[index]
你可能不希望把你的变量'list'。 –