3

我有两本词典

a = {'hola':4.6, 'bye':56.7, 'tres':52.1}
b = {'hola':7.1, 'tres':103.1}

b 是 a 的子集。

我想创建一个新字典,c 与值,a/b,即,

c = {'hola'=7.1/4.6, 'tres':103.1/52.1}

我可以对 b 到 a 的元素做一个 for 循环,然后创建一个新的,但是有没有更优雅的方法,没有循环?只是好奇。

4

1 回答 1

10

大多数pythonic可能是dict理解:

c = {k: a[k]/v for k,v in b.iteritems()}

字典理解是在 Python 2.7 中引入的,对于旧版本使用这个:

c = dict((k, a[k]/v) for k,v in b.iteritems())
于 2013-02-20T16:50:25.430 回答