[转]python的二维数组操作
来源:互联网 发布:怎么在淘宝上看优惠券 编辑:程序博客网 时间:2024/05/22 17:20
原文链接:http://www.cnblogs.com/btchenguang/archive/2012/01/30/2332479.html
需要在程序中使用二维数组,网上找到一种这样的用法:
?
1
2
3
4
5
6
#创建一个宽度为3,高度为4的数组
#[[0,0,0],
# [0,0,0],
# [0,0,0],
# [0,0,0]]
myList
=
[[
0
]
*
3
]
*
4
但是当操作myList[0][1] =1时,发现整个第二列都被赋值,变成
[[0,1,0],
[0,1,0],
[0,1,0],
[0,1,0]]
为什么...一时搞不懂,后面翻阅The PythonStandard Library
list *n—>n
例:
?
1
2
3
4
5
6
>>> lists
=
[[]]
*
3
>>> lists
[[], [], []]
>>> lists[
0
].append(
3
)
>>> lists
[[
3
],[
3
],[
3
]]
[[]]是一个含有一个空列表元素的列表,所以[[]]*3表示3个指向这个空列表元素的引用,修改任何
一个元素都会改变整个列表:
所以需要用另外一种方式进行创建多维数组,以免浅拷贝:
?
1
2
3
4
5
6
>>> lists
=
[[]
for
i
in
range
(
3
)]
>>> lists[
0
].append(
3
)
>>> lists[
1
].append(
5
)
>>> lists[
2
].append(
7
)
>>> lists
[[
3
],[
5
],[
7
]]
之前的二维数组创建方式为:
?
1
myList
=
[([
0
]
*
3
)
for
i
in
range
(
4
)]
作者:btchenguang
出处:http://www.cnblogs.com/btchenguang/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
- [转]python的二维数组操作
- python的二维数组操作
- python的二维数组操作
- python的二维数组操作
- python的二维数组操作
- python的二维数组操作
- Python 二维数组操作
- python的二维数组定义与操作
- python二维数组上的一些操作
- 整理:python的二维数组操作
- Python的二维数组
- 数组的操作--二维数组
- Python创建二维数组和切片操作
- 二维数组的操作运算
- 二维数组的操作运算
- 编程:二维数组的操作
- Python二维数组的创建
- Python二维数组的建立
- [原]堆排序的java实现
- 水仙花数
- [转]java泛型排序
- [转]java中泛型创建数组的总结
- [转]django 过滤器 、日…
- [转]python的二维数组操作
- 我的博客要搬家到csdn博客啦
- MyEclispe打开源文件中文成乱码问题
- 报告称HTML5将最终战胜本地移动应用
- 注册登录
- 抽象类
- 《Linux Shell 脚本攻略》学习日记-----巧用TR命令
- 模糊查询 空值处理 数据排序oreder by 数据分组group by
- sqlsever日期函数和case函数