鑑於字典{ k1: v1, k2: v2 ... }
我想要{ k1: f(v1), k2: f(v2) ... }
提供我通過一個函數f
。在python字典中的值映射
有沒有這樣的內置函數?或做我必須做的
dict([(k, f(v)) for (k, v) in my_dictionary.iteritems()])
理想的情況下,我只想寫
my_dictionary.map_values(f)
或
my_dictionary.mutate_values_with(f)
也就是說,如果原來的字典突變並不重要,我或一個副本被創建。
書寫更好的辦法你的例子將是'dict((k,f(v))for k,v in mydict.iteritems())',即沒有方括號,這將阻止通過生成器創建中間列表。 – bereal