Python:列表操作总结
一、创建一个列表
只要把逗号分隔的不同数据项使用方括号括起来即可
list1=['physics','chemistry',1997,2000]
list2=[1,2,3,4,5,6,7]
[注]:1.列表中的数据项不需要具有相同的数据类型
2.列表的索引从0开始,并且列表可以进行截取、组合
二、访问列表中的值
使用下标索引来访问列表中的值,同样也可以使用方括号的形式来截取字符
list1=['physics','chemistry',1997,2000]
list2=[1,2,3,4,5,6,7] print('list1[0]:',list1[0]) #输出:list1[0]:physics
print('list2[1:5]:',list2[1:5]) #输出:[2,3,4,5]
三、列表脚本操作符
|
Python表达式 |
结果 | 描述 |
| len([1,2,3]) | 3 | 长度 |
| [1,2,3]+[4,5,6] | [1,2,3,4,5,6] | 组合 |
| ['Hi!']*4 | ['Hi!','Hi!','Hi!','Hi!'] | 重复 |
| 3 in [1,2,3] | True |
元素是否存在于列表中 |
| for x in [1,2,3]: print(x) | 1,2,3 |
迭代 |
四、列表截取
假设列表如下:
list=[1,2,3,4,5,6,7,8,9]
操作:
| Python表达式 | 结果 | 描述 |
| list[2] | 3 | 读取列表中第三个元素 |
| list[-2] | 8 | 读取列表中倒数第二个元素 |
| list[1:4] | [2,3,4] | 截取从下标1开始到下标4(不包括下标4的元素)的元素,结果是一个列表 |
| list[1:8:2] | [2,4,6,8] | 截取从下标1开始到下标8(不包括下标8的元素)的元素,步长为2,结果为一个列表 |
| list[:3] | [1,2,3] | 从列表第一个元素开始截取到下标为3(不包括下标3的元素)的元素,结果为一个列表 |
| list[5:] | [6,7,8,9] | 截取从下标为5开始到列表末尾的元素,结果是一个列表 |
| list[:] | [1,2,3,4,5,6,7,8,9] | 复制整个列表 |
五、列表操作
对列表进行操作的内建函数:
1、cmp(list1,list2): 比较两个列表的元素
2、len(list): 返回列表中元素的个数
3、max(list):返回列表中元素的最大值
4、min(list): 返回列表中元素的最小值
5、sum(list): 返回列表中元素之和
6、list(seq): 将元组转换为列表
7、sorted(list): 获取list的一个副本,并将副本排序并返回结果
列表的方法:
增:
1、list.append(obj): 在列表末尾添加新的对象
2、list.insert(index,obj): 在列表的下标为index的地方插入对象
3、list.extend(new_list):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
删:
1、list.remove(obj): 移除列表中某个值的第一个匹配项
2、list.pop(index): 移除列表中下标为index的对象(若不指明index,则默认为列表最后一个元素,并且返回该元素的值
3、del list[index]: 移除列表中下标为index的对象
改:
1、list[index]=new_value :将list中下标为index的元素的值改为new_value
2、list.reverse():反向列表中的元素
3、list.sort() :对原列表进行排序 [注]:这个排序改变原来的列表
4、list.copy(): 对列表进行浅拷贝
查:
1、list.count(obj): 统计某个元素在列表中出现的次数
2、list.index(obj): 从列表中找出某个值第一个匹配项的索引值
六、对列表进行浅拷贝和深拷贝方法
import copy #导入copy模块
lst=[1,2,3,4,5,6,7,8,9] shallow_list1=copy.copy(lst) #浅拷贝方法1
shallow_list2=lst.copy() #浅拷贝方法2
shallow_list3=lst[:] #浅拷贝方法3
shallow_list=list(lst) #浅拷贝方法4 deep_list=copy.deepcopy(lst) #深拷贝
参考:Python脚本之家、《Python基础教程》
Python:列表操作总结的更多相关文章
- Python列表操作大全(非常全)
Python列表操作大全(非常全!!!) 对于python列表的理解可以和C语言里面的数组进行比较性的记忆与对照,它们比较相似,对于python里面列表的定义可以直接用方括号里加所包含对象的方法,并且 ...
- python第七篇:Python 列表操作详解
Python列表操作详解 list函数 list() #生成一个空的列表 list(iterable) #用可迭代对象初始化一个列表 列表的 and 运算和 or 运算 列表and运算 > ...
- python列表操作大全
Python列表操作大全 对于python列表的理解可以和C语言里面的数组进行比较性的记忆与对照,它们比较相似,对于python里面列表的定义可以直接用方括号里加所包含对象的方法,并且python的列 ...
- Python列表操作集合
对于python列表里元素的操作主要分为以下几个方面: 1.向列表里面加元素: 向python列表里面添加元素主要有三种方法: (1)append() append()对于列表的操作主要实现的是在特定 ...
- python列表操作总结
list是python中非常重要的类型/数据结构,总结如下: 符号说明 l:列表 l2:新列表 e:元素 index:位置 方法: 原地修改: l.append(e) l.insert(index, ...
- Python列表操作常用API
1.列表的概念 (1)列表的定义 列表是Python中一种基本的数据结构.列表存储的数据,我们称为元素.在列表中的每个元素都会有一个下标来与之对应,第一个索引是0,第二个索引是1,依此类推的整数. 列 ...
- Python—列表操作
列表 列表的使用: 列表是可变数据类型,因此列表的方法,都是直接修改列表原始值 list = ["panda","chimpanzee","zebra ...
- Python列表操作与深浅拷贝(6)——列表索引、查询、修改、扩展
列表list定义 L1 = [] L2 = [1,2,'abc'] L3 = list() L4 = list(range(5)) L5 = [1,'abc',True,None,[4,5,'abc' ...
- Python列表操作与深浅拷贝(5)——数字处理函数、类型判断、列表链表队列栈
python内建数据结构 分类 数值型: int float complex bool 序列对象: 字符串str 列表list 元组tuple 键值对: 集合set 字典dict 数值型 (list ...
- python——列表操作函数和方法
1.添加新元素 1.1 append()函数 描述:append() 方法用于在列表末尾添加新的对象. 语法:list.append(obj) 参数:obj -- 添加到列表末尾的对象. 返回值:该方 ...
随机推荐
- windows 使用npm安装webpack 4.0以及配置问题的解决办法
输入cmd点击打开 输入node -v 出现nodejs版本号 输入npm -v 出现npm版本号则安装npm安装成功, 2.安装webpack 桌面新建一个webpack-test文件夹,点击进入文 ...
- vue--slot插槽的使用方式
slot 插槽可以在子组件中为父组件要传递的标签占位置 能够有效的减少代码冗余 使代码更加有逼格 第一个例子 <body> <div class="app"& ...
- Spring AOP代理模式
代理模式 代理模式是一种设计模式,提供了对目标对象的另外的访问方式.即通过代理访问目标对象. 好处:可以再目标对象实现的基础上,增加额外的功能的操作.扩展目标对象的功能,而不改变现有的功能逻辑. 1. ...
- 一次JVM调优经历
前几天前端同事找我帮忙解决一个频繁FullGC问题.在100用户,每秒5个请求条件下进行测试,发现频繁FullGC. 使用VisualVM观察Jvm运行时信息,发现DB连接池占用了较多的资源.于是看了 ...
- ACM--移动桌子--贪心--HDOJ 1050--Moving Tables
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem Descript ...
- Springboot 报找不到对应的Mapper接口或RPC接口等问题
解决方法: 在Service引用中找到对应的Mapper引用.RPC引用: 给org.springframework.beans.factory.annotation.Autowired注解设置一个r ...
- 选择区域缩放Flex Chart
http://www.riafan.com/zoom-chart/ 演示地址: http://www.riafan.com/flash/zoomchart/ 下载地址: http://www.riaf ...
- # 20155224 实验三 敏捷开发与XP实践 实验报告
20155224 实验三 敏捷开发与XP实践 实验报告 实验内容 XP基础 XP核心实践 相关工具 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim ...
- 20155301 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155301 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 一.实验内容及步骤 (一)使用JDK编译.运行简单的java程序 命令行下的程序开发 步骤:打开cmd,建立 ...
- 20155333 2016-2017-2 《Java程序设计》第4周学习总结
20155333 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承基本上就是避免多个类间重复定义的共同行为,在Java中,子类只能继承一个父类. priv ...