Python二维数组

By | 2013/10/16
  • 错误的二维数组初始化示例:

比如要创建一个m*n的二维数组,初始值都0

demolist = [[0] * m ] * n

使用这种方式的确可以创建出一个m*n的二维数组,但是当你对(0,0)列进行赋值的时候会发现第0列所有的值都被赋值了。

这个问题,python官方有给出相应的解释
 
 

  • 正确的二维数组初始化示例:

比如要创建一个m*n的二维数组,初始值都0

demolist = [([0]  * m) for i in range(n) ]

 

当然,最正确的方法还应该是下面这种形式:

demolist = [[0 for col in range(m) ] for row in range(n) ]

Leave a Reply

Your email address will not be published. Required fields are marked *