one-liner implementation with dict comprehension

This commit is contained in:
Azan Bin Zahid
2020-10-02 15:02:43 +05:00
committed by GitHub
parent 6af7a0635b
commit 51f08b8737

View File

@ -5,14 +5,11 @@ tags: dictionary,function,intermediate
Creates a dictionary with the same keys as the provided dictionary and values generated by running the provided function for each value. Creates a dictionary with the same keys as the provided dictionary and values generated by running the provided function for each value.
- Use `dict.keys()` to iterate over the dictionary's keys, assigning the values produced by `fn` to each key of a new dictionary. - Use `dict.items()` to iterate over the dictionary, assigning the values produced by `fn` to each key of a new dictionary.
```py ```py
def map_values(obj, fn): def map_values(obj, fn):
ret = {} return dict((k, fn(v)) for k, v in obj.items())
for key in obj.keys():
ret[key] = fn(obj[key])
return ret
``` ```
```py ```py