Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python defaultdict的含义(lambda:defaultdict(dict))_Python_Defaultdict - Fatal编程技术网

Python defaultdict的含义(lambda:defaultdict(dict))

Python defaultdict的含义(lambda:defaultdict(dict)),python,defaultdict,Python,Defaultdict,下面这行在Python中是什么意思 x = defaultdict(lambda: defaultdict(dict)) 让我们从里到外解决它。首先,是字典类型。与其他类型一样,调用它会创建该类型的实例(也称为object)。A是一种接受可调用参数的类型:当调用时,它会生成一个要放入字典的项。当访问了一个不存在的条目,而不是像普通的dict一样生成一个命令时,就会发生这种情况。第三,是一种基于单个表达式创建未命名函数的方法,因此这两种方法相似(第二种方法拥有一个知道自己名称的函数,而第一种方法

下面这行在Python中是什么意思

x = defaultdict(lambda: defaultdict(dict))

让我们从里到外解决它。首先,是字典类型。与其他类型一样,调用它会创建该类型的实例(也称为object)。A是一种接受可调用参数的类型:当调用时,它会生成一个要放入字典的项。当访问了一个不存在的条目,而不是像普通的
dict
一样生成一个命令时,就会发生这种情况。第三,是一种基于单个表达式创建未命名函数的方法,因此这两种方法相似(第二种方法拥有一个知道自己名称的函数,而第一种方法则不知道):


最后,整个过程被包装在另一个
defaultdict
中。因此,结果是
x
是一个
defaultdict
,它产生
defaultdict
s,它产生
dict
实例。在第三级,不再存在默认值

让我们从里到外解决它。首先,是字典类型。与其他类型一样,调用它会创建该类型的实例(也称为object)。A是一种接受可调用参数的类型:当调用时,它会生成一个要放入字典的项。当访问了一个不存在的条目,而不是像普通的
dict
一样生成一个命令时,就会发生这种情况。第三,是一种基于单个表达式创建未命名函数的方法,因此这两种方法相似(第二种方法拥有一个知道自己名称的函数,而第一种方法则不知道):


最后,整个过程被包装在另一个
defaultdict
中。因此,结果是
x
是一个
defaultdict
,它产生
defaultdict
s,它产生
dict
实例。在第三级,不再存在默认值

很好的解释,我努力向OP解释。谢谢。很好的解释,我努力向OP解释。谢谢。
y = lambda: defaultdict(dict)

def y():
    return defaultdict(dict)