2017-03-09 13 views
0

リストのリストから2つの乱数を生成しようとしたとき、2つの乱数がリスト内の2つの異なるリストにあるはずでした。リストのリストの同じリストから2つの要素が得られました。リストのリストから2つの乱数を得るには?

例:

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

関連する問題