2011-01-05 58 views
4

從python列表中選擇5個不同元素並將它們添加到新列表中的最佳方式是什麼?從列表中選擇5個不同的元素?

感謝您的幫助!

+3

不同的值或不同的索引?按什麼順序 - 隨機?你的問題現在非常廣泛。 – 2011-01-05 06:30:06

回答

11

假設你希望他們隨機選取的,並已經決定了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將引用包含五個元素的列表。

2

使用random.sample呼叫

import random 
random.sample(yourlist,5) 
+0

你有一個錯字,但我修好了。 :) – 2011-01-05 06:26:29

1

您可能需要更具體,但返回從列表5個獨特的元素,你可以簡單地使用samplerandom module

import random 
num = 5 
aList = range(30) 
newList = [] 
newList+=random.sample(aList, num) 
1
>>> 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]