gpt4 book ai didi

python - 为什么需要lambda来嵌套defaultdict?

转载 作者:太空狗 更新时间:2023-10-29 22:30:01 25 4
gpt4 key购买 nike

我对为什么需要 lambda 函数来嵌套 defaultdict 感到有点困惑

为什么你不能这样做呢?

test = defaultdict(defaultdict(list))

代替

test = defaultdict(lambda:defaultdict(float))

最佳答案

test = defaultdict(defaultdict(list))

因为 defaultdict 要求您给它一些可以调用 来为缺失值创建键的东西。 list 是这样一个可调用的,但 defaultdict(list) 不是。这是一个 defaultdict 实例,您不能调用 defaultdict

lambda 是一个函数,当被调用时,返回 一个可以在字典中使用的值,因此它可以工作。

本质上,defaultdict(list) 将在 您的 defaultdict 被实例化之前被评估,而您想延迟 直到遇到丢失的 key 。这就是此处使用可调用对象(类型或函数)的原因。

关于python - 为什么需要lambda来嵌套defaultdict?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30609117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com