如何将循环输出与另一个循环输出结合起来?

时间:2017-03-24 02:09:44

标签: python-3.x for-loop zip output associate

我们说我有一个生成随机名称的循环

names = ['Kiri', 'Elizabeth', 'Philip', 'Charlotte', 'Lydia']

random_names = []
for x in range(3):
    random_names.append(random.choice(names))
print (random_names)

- 这将打印出3个随机名称,例如[' Charlotte',' Lydia',' Kiri']

然后我想生成随机数,比如从1到20

random_numbers = random.sample([x for x in range (1,20)], (3))
print (random_numbers)

让我们说[7,13,2]

然后我的问题是,我想将这些随机数分配给以下随机名称,以便它与名称相关联。我应该如何以某种方式编写代码,以便它可以显示为

(' Charlotte',7),(' Lydia',13),(' Kiri',2)

提前致谢 !

1 个答案:

答案 0 :(得分:1)

有几种方法可以使用zip查看这个小例子:

names = ['Kiri', 'Elizabeth', 'Philip', 'Charlotte', 'Lydia']
random_numbers = random.sample([x for x in range (1,20)], (3))
zip(names,random_numbers)

输出

  

[('Kiri',19),('Elizabeth',3),('Philip',1)]

上面的输出是list of tuples