2017-03-09 98 views
0

當我試圖從列表中生成兩個隨機數並且兩個隨機數應該來自列表中的兩個不同列表時,我從列表中列出了同一列表中的兩個元素。如何從列表中獲得兩個隨機數字?

例子:

list1 = [[1,2,],[3,4],[5,6]] 
import random 
random.choice(random.sample(l,2)) 
output = [5, 6] 

for random.sample(random.choice(l),2) 
output = [2, 1] 

回答

0

我真的不明白你問什麼,但如果你想從列表中的列表中隨機元素,

>>> import random 
>>> from itertools import chain 
>>> list1 = [[1,2,],[3,4],[5,6]] 
>>> random.choice(list(chain.from_iterable(list1))) 
4 
>>> random.choice(list(chain.from_iterable(list1))) 
3 
>>> random.choice(list(chain.from_iterable(list1))) 
1 

chain.from_iterable(iterable)做什麼是平整列表的列表。

>>> list(chain.from_iterable(list1)) 
[1, 2, 3, 4, 5, 6] 

https://docs.python.org/2/library/itertools.html#itertools.chain.from_iterable

相關問題