在创建二维数组时,若直接采用:
>>> arr = [[]]*4
则此时得到的称为浅拷贝,创建了一个空列表,之后得到4个指向空列表的引用,所以会出现如下情况
>>> arr[0].append(1)
>>> arr
[[1], [1], [1], [1]]
因此如果要创建二维数组时,应该采用如下形式:
>>> lists = [[] for i in range(3)]
在创建二维数组时,若直接采用:
>>> arr = [[]]*4
则此时得到的称为浅拷贝,创建了一个空列表,之后得到4个指向空列表的引用,所以会出现如下情况
>>> arr[0].append(1)
>>> arr
[[1], [1], [1], [1]]
因此如果要创建二维数组时,应该采用如下形式:
>>> lists = [[] for i in range(3)]