解决Python使用列表副本的问题


Posted in Python onDecember 19, 2019

要使用一个列表的副本,要用切片进行列表复制,这样会形成两个独立的列表。

切记不要将列表赋值给一个列表,因为这样并不能得到两个列表。

1、使用赋值语法创建列表副本的问题

下边就将列表赋值,验证是否形成独立的列表:

squares = list(range(1, 11))
 
print('squares原始值为:', end='')
print(squares)
 
# 使用列表赋值
numbers_squares = squares
print('numbers_squares所有元素为:', end='')
print(numbers_squares)
 
# 为squares列表添加数字100
squares.append(100)
print('添加数字后的squares值:', end='')
print(squares)
 
# 为squares列表添加数字200
numbers_squares.append(200)
print('添加数字后的number_squares值:', end='')
print(numbers_squares)

输出为:

squares原始值为:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers_squares所有元素为:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
添加数字后的squares值:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100]
添加数字后的number_squares值:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100, 200]

可以看到,number_squares列表值中,也有数字100,说明赋值并没有形成两个独立的列表。赋值只是让Python新变量number_squares关联到包含在squares中的列表,所以这两个列表指向同一个列表。

2、列表副本正确方法:使用切片复制列表副本

下边的列子,创建一个1-10的数字列表,用切片进行列表复制形成两个独立的列表

squares = list(range(1, 11))
 
print('squares原始值为:', end=' ')
print(squares)
 
# 使用切片复制squares列表
numbers_squares = squares[:]
print('numbers_squares所有元素为:', end=' ')
print(numbers_squares)

输出为:

squares原始值为: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers_squares所有元素为: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

为了验证确实形成了两个独立的列表,在每个列表上加数字,核实每个列表都记录了加的数字

squares = list(range(1, 11))
 
print('squares原始值为:', end='')
print(squares)
 
# 使用切片复制squares列表
numbers_squares = squares[:]
print('numbers_squares所有元素为:', end='')
print(numbers_squares)
 
# 为squares列表添加数字100
squares.append(100)
print('添加数字后的squares值:', end='')
print(squares)
 
# 为squares列表添加数字200
numbers_squares.append(200)
print('添加数字后的number_squares值:', end='')
print(numbers_squares)

输出为:

squares原始值为:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers_squares所有元素为:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
添加数字后的squares值:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100]
添加数字后的number_squares值:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 200]

可以看到,确实100和200分别加入到相应列表中。

以上这篇解决Python使用列表副本的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现从web抓取文档的方法
Sep 26 Python
Python使用MONGODB入门实例
May 11 Python
python自定义解析简单xml格式文件的方法
May 11 Python
python实现自动重启本程序的方法
Jul 09 Python
Python简单获取自身外网IP的方法
Sep 18 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
Oct 12 Python
Python实现多线程/多进程的TCP服务器
Sep 03 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
Feb 21 Python
如何导出python安装的所有模块名称和版本号到文件中
Jun 05 Python
Python绘图之柱形图绘制详解
Jul 28 Python
Python map及filter函数使用方法解析
Aug 06 Python
Python OpenCV超详细讲解读取图像视频和网络摄像头
Apr 02 Python
python读写Excel表格的实例代码(简单实用)
Dec 19 #Python
python装饰器原理与用法深入详解
Dec 19 #Python
python列表生成器迭代器实例解析
Dec 19 #Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
Dec 19 #Python
Python: 传递列表副本方式
Dec 19 #Python
python内置模块collections知识点总结
Dec 19 #Python
Python操作redis和mongoDB的方法
Dec 19 #Python
You might like
PHP性能优化 产生高度优化代码
2011/07/22 PHP
PHP表单数据写入MySQL数据库的代码
2016/05/31 PHP
PHP的时间戳与具体时间转化的简单实现
2016/06/13 PHP
Yii框架组件的事件机制原理与用法分析
2020/04/07 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
js特殊字符转义介绍
2013/11/05 Javascript
javascript显示中文日期的方法
2015/06/18 Javascript
jquery弹出框插件jquery.ui.dialog用法分析
2016/08/20 Javascript
解决nodejs中使用http请求返回值为html时乱码的问题
2017/02/18 NodeJs
Angular实现下拉框模糊查询功能示例
2018/01/03 Javascript
如何去除vue项目中的#及其ie9兼容性
2018/01/11 Javascript
详解webpack的proxyTable无效的解决方案
2018/06/15 Javascript
CryptoJS中AES实现前后端通用加解密技术
2018/12/18 Javascript
JavaScript HTML DOM元素 节点操作汇总
2019/07/29 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
js+canvas绘制图形验证码
2020/09/21 Javascript
构建Python包的五个简单准则简介
2015/06/15 Python
Python将DataFrame的某一列作为index的方法
2018/04/08 Python
numpy判断数值类型、过滤出数值型数据的方法
2018/06/09 Python
python 2.7 检测一个网页是否能正常访问的方法
2018/12/26 Python
使用pycharm设置控制台不换行的操作方法
2019/01/19 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
numpy库reshape用法详解
2020/04/19 Python
彻底解决pip下载pytorch慢的问题方法
2021/03/01 Python
HTML5 Canvas基本线条绘制的实例教程
2016/03/17 HTML / CSS
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
Cotton On美国网站:澳洲时装连锁品牌
2016/10/25 全球购物
Boden美国官网:英伦原创时装品牌
2017/07/03 全球购物
理工大学毕业生自荐信
2013/11/01 职场文书
户外亲子活动策划方案
2014/02/07 职场文书
责任书格式范文
2014/07/28 职场文书
2014年党员自我评议对照检查材料
2014/09/20 职场文书
机关作风建设心得体会
2014/10/22 职场文书
2015年元旦主持词开场白
2014/12/14 职场文书
走进科学观后感
2015/06/18 职场文书
校长新学期寄语2016
2015/12/04 职场文书