, , , , , .
izip_longest random.choice:
list1 = ['tom', 'mary', 'frank', 'joe', 'john', 'barry']
list2 = [1, 2, 3, 4]
izip_longest , zip , , None ( ):
>>> list(izip_longest(list1, list2))
[('tom', 1), ('mary', 2), ('frank', 3), ('joe', 4), ('john', None), ('barry', None)]
None random.choice:
>>> l = [(n, v if v else random.choice(list2)) for n,v in izip_longest(list1, list2)]
>>> l
[('tom', 1), ('mary', 2), ('frank', 3), ('joe', 4), ('john', 2), ('barry', 4)]
, random.shuffle:
>>> random.shuffle(l)
>>> l
[('mary', 2), ('john', 1), ('barry', 2), ('joe', 4), ('tom', 1), ('frank', 3)]