当我尝试从列表列表生成两个随机数时,两个随机数应该来自列表中的两个不同列表,我从列表列表中的同一列表中获得了两个元素。
示例:
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 :(得分: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