python学习(7)关于列表操作相关命令以及浅复制深复制
在python中,[]表示的是列表。列表有各种操作命令。
1、append()方法,添加一个元素到列表尾部。
注意append()方法与extend()方法有区别:list.append(object) 向列表中添加一个对象object而list.extend(sequence) 把一个序列seq的内容添加到列表中
例如:
names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=["liuyi","zhangsong"] names.extend(names2)
print(names) >>>>>>>
['hongtao', 'xiaoweihong', 'hongyuchan', ['show530', 'luby'], 'hongpingshui', 'guochaoxi', 'liuyi', 'zhangsong']
___________________________________________________ names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=["liuyi","zhangsong"] names.append(names2)
print(names) >>>>>>>>>
['hongtao', 'xiaoweihong', 'hongyuchan', ['show530', 'luby'], 'hongpingshui', 'guochaoxi', ['liuyi', 'zhangsong']]
2、关于 remove(),pop(),以及del列表操作的相同点和不同点:
(1)remove 是删除首个符合条件的元素。并不是删除特定的索引。
>>> a = [0, 2, 2, 3]
>>> a.remove(2)
>>> a
[0, 2, 3]
(2)对于 del 来说,它是根据索引(元素所在位置)来删除的。
>>> a = [3, 2, 2, 1]
>>> del a[1]
[3, 2, 1]
(3)pop返回的是你弹出的那个数值。
>>> a = [4, 3, 5]
>>> a.pop(1)
3
>>> a
[4, 5]
3、关于深度COPY和浅度COPY的区别:
简单地说,深度COPY就是把A列表简单的复制一份,跟A列表一模一样。而浅度COPY复制的时候遭遇到列表中包含列表的情况的话,他只复制内存地址。
例如以下代码:
import copy
names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=copy.copy(names)
names[3][0]="SHOW530"
names[3][1]="LUBY"
print(names2) 输出结果>>>>>>> ['hongtao', 'xiaoweihong', 'hongyuchan', ['SHOW530', 'LUBY'], 'hongpingshui', 'guochaoxi'] import copy
names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"]
names2=copy.deepcopy(names)
names[3][0]="SHOW530"
names[3][1]="LUBY"
print(names2) 输出结果>>>>>>> ['hongtao', 'xiaoweihong', 'hongyuchan', ['show530', 'luby'], 'hongpingshui', 'guochaoxi']
4、关于列表中元素的位置表示方法及间隔
names[0:-1] 表示从列表names中第一个元素到最后一个元素;
names[0:-1:2] 表示从列表names中第一个元素到最后一个元素,步长为2,每个元素间隔1
names[0:-1:2]有时也会简写成names[::2]如果步长是1,那么可以简写为names[:]
python学习(7)关于列表操作相关命令以及浅复制深复制的更多相关文章
- IDEA环境下GIT操作浅析之二-idea下分支操作相关命令
上次写到<idea下仓库初始化与文件提交涉及到的基本命令>,今天我们继续写IDEA环境下GIT操作之二--idea下分支操作相关命令以及分支创建与合并. 1.idea 下分支操作相关命令 ...
- Redis中LIST列表的相关命令
Redis中LIST列表的相关命令 添加 lpush 将一个或多个value插入到key的表头,如果存在多个value,那么各个value按从左到右的顺序依次插入表头 插入表头:意味着新插入的值在最前 ...
- Python学习杂记_5_列表常用操作
列表操作 列表时用方括号括起来的一组元素值,是可变变量,可通过下表取值,也可以通过下表来修改值,列表中的元素是有序的,可以是不同的基本数据类型,如: names=[1, 2, 3, “abc”, “d ...
- 【Python学习之六】文件操作
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.文件的打开与关闭 使用open函数,可以打开一 ...
- python学习笔记整理——列表
Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...
- Python学习---Django的基础操作180116
Django创建数据库操作 django流程之model实例 settigs.py:更改Django2.0.1的配置,更新为之前的路径配置 'DIRS': [os.path.join(BASE_DIR ...
- python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...
- redis入门指南(二)—— 数据操作相关命令
写在前面 以下绝大部分内容取材于<redis入门指南>,部分结合个人知识,实践后得出. 只记录重要,明确,属于新知的相关内容,杜绝冗余和重复. 字符串 1.字符串类型是redis中最常见的 ...
- Linux学习记录--文件IO操作相关系统编程
文件IO操作相关系统编程 这里主要说两套IO操作接口,各自是: POSIX标准 read|write接口.函数定义在#include<unistd.h> ISO C标准 fread|fwr ...
随机推荐
- 重新认识C语言的指针(上)
独创性并不是首次观察某种新事物,而是把旧的.很早就是已知的,或者是人人都视而不见的事物当新事物观察,这才证明是有真正的独创头脑 -尼采 本文已经收录至我的GitHub,欢迎大家踊跃star 和 i ...
- 讨论Java中的内部类是什么?
目录 前言 what is that? 成员内部类 局部内部类 匿名内部类 why use it? how to use? 前言 内部类,讲完前面的特性,今天就讲下内部类这个用的比较多,出现频率挺高的 ...
- input 只允许输入小数
oninput = "value=value.replace(/[^\d]/g,'')" 输入浮点数不好使 突发奇想自己写一个与众不同的... oninput="valu ...
- 8086汇编语言学习(二) 8086汇编开发环境搭建和Debug模式介绍
1. 8086汇编开发环境搭建 在上篇博客中简单的介绍了8086汇编语言.工欲善其事,必先利其器,在8086汇编语言正式开始学习之前,先介绍一下如何搭建8086汇编的开发环境. 汇编语言设计之初是用于 ...
- 【X86】---X86处理器大小端的数据存储验证
之前也关注过大小端的存储,可能时间久了,加之又之前的电脑抽象换成了当前的处理器寄存器的值判断,导致自己总是有点蒙圈.看Spec手册的时候,有时会无法与手册中某个Bit的值与RU/RW工具读出来的对应上 ...
- 【转】KAFKA分布式消息系统
Kafka[1]是linkedin用于日志处理的分布式消息队列,linkedin的日志数据容量大,但对可靠性要求不高,其日志数据主要包括用户行为(登录.浏览.点击.分享.喜欢)以及系统运行日志(CPU ...
- java小心机(2)| 重载和构造器的小细节
每天进步一点点,距离大腿又近一步! 阅读本文大概需要10分钟 java小心机,为你诉说java鲜为人知的一面 涉及基本数据类型的重载 基本类型能从一个"较小"的类型自动提升到&qu ...
- winform dataGridView 点击列标题排序
winform手动绑定数据后,点击列标题不能实现自动排序,苦苦寻找方法,发现下面的是可行的. //建立DataTable将当前dataGridView中的数据读进DataTable中 public D ...
- Kivy Event 在哪里?
kivy 程序都是都需要继承APP基类 而App类在Lib\site-packages\kivy\app.py文件定义 from kivy.event import EventDispatcher c ...
- ios---apple mach-o linker error 报错解决
问题触发场景 在新xcode环境里配置了cocoapods,并运行了自己的项目.然后某日从其他地方clone了第三方项目,打开后,有了这个报错: 问题原因 1.用cocoapods装了第三方插件后,要 ...