2

考虑我有以下两个元组:

keys=("second", "minute", "hour", "day")
values=(1, 60, 60, 24)

我想创建一个字典,其中keys元组作为键,values元组作为值。这是我天真的做法:

d={}
for i in xrange(len(keys)):
    d[keys[i]] = values[i]

有没有更简单更优雅的方式来做到这一点?

我主要使用 Python2.7,所以我更喜欢这个版本的特权。

4

2 回答 2

8
>>> keys=("second", "minute", "hour", "day")
>>> values=(1, 60, 60, 24)
>>> dict(zip(keys,values))
{'second': 1, 'hour': 60, 'minute': 60, 'day': 24}
于 2012-04-16T18:42:26.223 回答
7

zip函数将一对可迭代对象转换为对列表。构造dict函数接受多种形式的参数,其中一种是(键,值)对的序列。将两者放在一起,您将得到您想要的:

dict(zip(keys, values))
于 2012-04-16T18:45:17.177 回答