作者Leland (报废机器人的传说)
看板Python
标题Re: [问题] List 的问题 x=[[0]*10]*10 ...
时间Sat May 20 11:12:29 2006
※ 引述《jgpnsgm (哼!)》之铭言:
: 想做一个10x10的array
: 在python里是用list来实现吧?
: x=[[0]*10]*10
: print x
: 看起来好像是10x10的zero array没错..
: x[0][0]=12
: print x
: 想改变0,0的值却发现*,0的值都变了...
: 看起来是我的list有问题的样子,参考到同一位址
: 请问正确的方法是?
用 list 的话是 x = [[0] * 10 for i in xrange(10)]
不过如果你真的要用 numeric array 的话我建议你装 numpy,
然後用 x = zeros((10, 10), Int) 之类的。
--
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS/CM/IT d-(+) s-:- a- C+++(++) UB++++ P-- L- E- W++ N+ o?>++ K->
w--(+) O-@ M+@ V- PS+ PE Y+ PGP++ t+ 5?>+ X+ R+@ tv+ b+ DI>+ D G
e++>++++ h+@ !r !y
------END GEEK CODE BLOCK------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.30.50
1F:推 jgpnsgm:感谢...^^ 05/20 15:44