【发布时间】:2011-01-05 06:19:34
【问题描述】:
从 python 列表中选择 5 个不同元素并将它们添加到新列表中的最佳方法是什么?
感谢您的帮助!
【问题讨论】:
-
不同的值或不同的索引?以什么顺序 - 随机?您现在的问题非常广泛。
从 python 列表中选择 5 个不同元素并将它们添加到新列表中的最佳方法是什么?
感谢您的帮助!
【问题讨论】:
假设您希望随机选择它们并且 new_list 已经定义,
import random
new_list += random.sample(old_list, 5)
如果new_list 尚未定义,那么您可以这样做
new_list = random.sample(old_list, 5)
如果您不想更改new_list,而是想创建new_new_list,那么
new_new_list = new_list + random.sample(old_list, 5)
现在对new_list 的引用仍将访问没有五个新元素的列表,但new_new_list 将引用一个包含五个元素的列表。
【讨论】:
使用random.sample调用
import random
random.sample(yourlist,5)
【讨论】:
您可能需要更具体一些,但要从列表中返回 5 个唯一元素,您可以简单地使用 random module 中的 sample
import random
num = 5
aList = range(30)
newList = []
newList+=random.sample(aList, num)
【讨论】:
>>> list = [1,3,6,3,2,5,7,4,7,8,9,4,3,2,4,6,7]
>>> newlist = []
# Pick 5 and add to new list:
>>> newlist.extend(list[:5])
>>> newlist
[1, 3, 6, 3, 2]
【讨论】: