python - 在字典值中创建空列表

问题描述

我已经设法通过以下方式创建了一个零列表作为字典值:

from collections import defaultdict
diction = defaultdict(lambda: list(np.zeros(len(8))))

调用上面的结果是一个空字典,所以调用 diction[0] 给出:

[0.0,0.0,0.0]

它允许我用我想要的任何值或元组覆盖零,但它不允许我附加值。 所以我想要做的不是有一个零列表,而是有 9 个空列表,所以在调用 diction[0] 时,输出应该是这样的:

[[],[],[]].

我知道如何使用 for 循环来做到这一点,但我想要一种更有效的方法,如果可能的话,使用 lambda。

解决方法

my_list = {i: [[] for i in range(x)] for i in range(y)}  

例如:

my_list = {i: [[] for i in range(8)] for i in range(10)} 

输出:

{0: [[],[],[]],1: [[],2: [[],3: [[],4: [[],5: [[],6: [[],7: [[],8: [[],9: [[],[]]} 

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...