python 深浅拷贝
来源:互联网 发布:手机记日记什么软件好 编辑:程序博客网 时间:2024/06/07 10:38
创建一个宽度为3,高度为4的数组
>>> myList = [[0] * 3] * 4 [ [0,0,0], [0,0,0], [0,0,0], [0,0,0] ]
但是当操作myList[0][1] = 1时,发现整个第二列都被赋值,变成
[[0,1,0], [0,1,0],[0,1,0],[0,1,0]]
list * n—>n shallow copies of list concatenated, n个list的浅拷贝的连接
>>> lists = [[]] * 3>>> lists[[], [], []]>>> lists[0].append(3)>>> lists[[3], [3], [3]]
[[]]是一个含有一个空列表元素的列表,所以[[]]*3表示3个指向这个空列表元素的引用,修改任何
一个元素都会改变整个列表:
所以需要用另外一种方式进行创建多维数组,以免浅拷贝:
>>> lists = [[] for i in range(3)]>>> lists[0].append(3)>>> lists[1].append(5)>>> lists[2].append(7)>>> lists[[3], [5], [7]]
之前的二维数组创建方式为:
>>> myList = [([0] * 3) for i in range(4)]
阅读全文
0 0
- python深浅拷贝
- python 深浅拷贝 进阶
- Python之深浅拷贝
- python 深浅拷贝
- python 深浅拷贝
- python深浅拷贝探究
- python学习-深浅拷贝
- python中的深浅拷贝
- python中的深浅拷贝
- python 深浅拷贝
- PYTHON深浅拷贝
- Python之深浅拷贝
- 【python】深浅拷贝
- Python中的深浅拷贝详解
- Python中的深浅拷贝详解
- python赋值和深浅拷贝
- python对象的深浅拷贝
- Python学习之深浅拷贝
- hibernate修改and删除
- Ionic 介绍
- netty+zk实现简单的rpc调用(基于传输层)
- 《剑指offer》刷题笔记系列综述
- 文章标题关于mysql安装出错问题
- python 深浅拷贝
- 如何使用U盘重装win7系统
- HDU 1728
- Cesium应用篇:1快速搭建
- bzoj4448: [Scoi2015]情报传递
- ubantu装flash
- Java 理论与实践——处理 InterruptedException
- 欢迎使用CSDN-markdown编辑器
- netty的简单使用实例