相关疑难解决方法(0)

映射python字典中的值

鉴于{ k1: v1, k2: v2 ... }我想要{ k1: f(v1), k2: f(v2) ... }提供的字典,我传递了一个函数f.

有没有这样的内置功能?或者我必须这样做

dict([(k, f(v)) for (k, v) in my_dictionary.iteritems()])
Run Code Online (Sandbox Code Playgroud)

理想情况下我会写

my_dictionary.map_values(f)
Run Code Online (Sandbox Code Playgroud)

要么

my_dictionary.mutate_values_with(f)
Run Code Online (Sandbox Code Playgroud)

也就是说,如果原始字典被改变或创建了副本,对我来说无关紧要.

python dictionary map-function

219
推荐指数
4
解决办法
21万
查看次数

是否有一种聪明的方法将密钥传递给defaultdict的default_factory?

一个类有一个构造函数,它接受一个参数:

class C(object):
    def __init__(self, v):
        self.v = v
        ...
Run Code Online (Sandbox Code Playgroud)

在代码的某处,dict中的值可以用来知道它们的键.
我想使用defaultdict,并将密钥传递给新生默认值:

d = defaultdict(lambda : C(here_i_wish_the_key_to_be))
Run Code Online (Sandbox Code Playgroud)

有什么建议?

python

81
推荐指数
4
解决办法
1万
查看次数

标签 统计

python ×2

dictionary ×1

map-function ×1