Python创建n*n的列表

  • Post author:
  • Post category:python


Python创建n*n的列表

当使用  [ [ None ] *n ] *n 方法创建时,会使子列表都指向同一列表

>>> t = [[]] * 4
>>> t
[[], [], [], []]
>>> t[0].append(3) #改变一子列表导致其他均被改变
>>> t
[[3], [3], [3], [3]]

为了避免此类情况

t = list([None]*n for _ in range(n))
or
t = [[None]*n for _ in range(n)]

python中for _ in range () 中’_’的意思

其中’_’ 是一个循环标志,也可以用i,j 等其他字母代替,下面的循环中不会用到,起到的是循环此数的作用

就像C语言中

for (int i ; i<100 ; i++){
    代码块;
}



版权声明:本文为RitaAndWakaka原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。