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 -- 添加到列表末尾的对象. 返回值:该方 ...
随机推荐
- navicat mysql 存储过程
存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. 一.基本数据类型:略 二.变量: 自定义变量:DECLARE a INT ; SET a=100; 可用以 ...
- OpenStack(queens)最小化搭建记录——控制与计算共两个节点
境: 2台安装了centos7-minimal的主机 ip地址: 10.132.226.103/24 (controller) 10.132.226.104/24 (compute1) 1.配置主机名 ...
- MongoDB DBA 实践3-----安装mongdb4.0发生错误
在安装mongodb时,常常会出现一些错误,导致无法安装完全,下面则是各种错误与它们的解决方法: 1.在window机安装mongodb4.0, 其中的一种:由于缺失系统补丁,而导致无法完全安装,具体 ...
- Redis API的理解与使用
目录 一.通用命令 二.数据结构与内部编码 三.单线程架构 一.通用命令 Redis有五种数据结构,它们是键值对中的值,对于键来说有一些通用的命令.Redis的全局通用命令有:keys,dbsize, ...
- php向页面输出中文时出现乱码的解决方法
今天,刚刚学习PHP发现用echo输出中文时,页面会出现乱码,然后查了一下资料说是浏览器编码格式有问题,要改成utf-8.但是每个人的浏览器编码可能会有所不同,所以找到了一个很好的解决方法, 就是在p ...
- docker入门——安装(CentOS)、镜像、容器
Docker简介 什么是docker 官方解释: Docker is the company driving the container movement and the only container ...
- 海思平台交叉编译curl支持SSL功能
1.准备工具 1).交叉编译工具 2).下载libcurl和openssl源代码,我使用的是(openssl-1.0.2o.tar,curl-7.59.0.tar) 3).查看cpu详细 ~ # ca ...
- centos系统误删libc.so.6
前段时间遇到开发人员更新glibc版本,把/usr/lib64/libc-2.12.so & libc.so.6 -> libc-2.12.so 这个软连接更改之后导致报错: ls: e ...
- BrightScript 3D test - Roku (4)
My initial attempt to port over an old Actionscript program, here it goes in main.brs. Library " ...
- 20155227 2016-2017-2 《Java程序设计》第二周学习总结
20155227 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 本周学习的第三章内容与以前学过的C语言有很多共通的地方,学习起来还是比较快的. 主要的内容有 ...