我想要一个字典数组,这样数组的长度为3。 所以,我做了
X = [{}] * 3
现在我想填充这些词典中的第一个。所以,我做了:
X[0]['hi'] = 'hello'
现在,如果我打印X,我期待看到:
[{'hi': 'hello'}, {}, {}]
但令我惊恐的是,我看到的是:
[{'hi': 'hello'}, {'hi': 'hello'}, {'hi': 'hello'}]
显然,三个词典是相同的。有人能告诉我为什么python做出这个设计选择吗?另外,除了显式迭代之外,还有一种方法可以用空的dicts初始化数组吗?