Chinaunix

标题: N*N二维数组求助(已解决) [打印本页]

作者: 猪鼻插葱    时间: 2011-06-07 15:36
标题: N*N二维数组求助(已解决)
本帖最后由 猪鼻插葱 于 2011-06-07 15:49 编辑

刚学习Python 想写个N*N的二维列表 结果问题出来了 各位帮我看一下 我这样写问题出在哪里?
  1. n=input('please input number:')
  2. print n

  3. a=[[None]*n]*n
  4. print a
  5. for i in range(0,n):
  6.     print '\n'
  7.     for j in range(0,n):
  8.         a[i][j]=n*i+j
  9.         print a[i][j]
  10. print a
复制代码
结果出来的列表 全部都是最后一行,请问下谁知道这是为什么吗


因为定义列表时 用的是* 所以仅仅是和之前的共享引用 所以改变前面的列表 也会引起后面列表的修改 还需继续努力




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2