初始化列表时,我们使用如下的方法创建一定长度的一维列表是可行的:
但是当我们用这样的方法创建一个多维列表,这里以二维列表为例,在赋值时会出现错误:
如上图所示,我们的本意是只给第0行第0列的元素赋值,但是整个第0列的元素都发生了变化,原因是[[]]*10表示的是表示10个指向这个空列表元素的引用,是一种浅拷贝【1】,因此修改任何一个元素都会改变整个列表,所以我们需要采取另外的方式方式来创建二维列表:
可以看到,这样我们给一个元素赋值时就不会出现错误了。
【1】参考链接:https://blog.csdn.net/liangjiubujiu/article/details/82153095