我有两本字典
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 循环,然后创建新元素,但是有没有更优雅的方式,无需循环?只是好奇。
最佳答案
大多数 pythonic 可能是字典理解:
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())
关于匹配字典的pythonic方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14985312/