映射字典的值

创建一个与提供的字典具有相同键的字典,并通过对每个值运行提供的函数生成值。

  • 使用dict.items()遍历字典,将fn生成的值分配给新字典的每个键。
def map_values(obj, fn):
  return dict((k, fn(v)) for k, v in obj.items())

users = {
  'fred': { 'user': 'fred', 'age': 40 },
  'pebbles': { 'user': 'pebbles', 'age': 1 }
}
map_values(users, lambda u : u['age']) # {'fred': 40, 'pebbles': 1}