004_005 Python 在不适用引用的时候,创建列表的列表

来源:互联网 发布:python 字符串数组 编辑:程序博客网 时间:2024/05/16 17:06

代码如下:

#encoding=utf-8print '中国'#在不适用引用的时候,创建列表的列表print '使用列表推导'#创建5*2 的全为0的阵列mulist=[[0 for col in range(5)] for row in range(2)]print mulistmulist[1][1]='bad way'print mulist#不好的方式,错的方式mulist2=[[0]*5]*2  #因为只是原来列表的多次重复,所以一次修改会引起多次修改  引用5次【0】 对第一次的【0】*5引用2次print mulist2mulist2[1][1]='bad way'print mulist2#最快而且正确的方式mulist3=[[0] * 5 for row in range(2)]mulist3[0][0]='bad way'print mulist3 

打印结果如下:

中国
使用列表推导
[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
[[0, 0, 0, 0, 0], [0, 'bad way', 0, 0, 0]]
[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
[[0, 'bad way', 0, 0, 0], [0, 'bad way', 0, 0, 0]]
[['bad way', 0, 0, 0, 0], [0, 0, 0, 0, 0]]

0 0