011.Python的列表的相关操作
一 列表的相关操作
1.1 列表的拼接
lst1 = [1,2,3]
lst2 = [4,5,6]
res = lst1 + lst2
print(res)
执行
[root@node10 python]# python3 test.py
[1, 2, 3, 4, 5, 6]
1.2 列表的重复
lst1 = [7,8,9]
res = lst1 * 3
print(res)
执行
[root@node10 python]# python3 test.py
[7, 8, 9, 7, 8, 9, 7, 8, 9]
1.3 列表的切片
语法 => 列表[::] 完整格式:[开始索引:结束索引:间隔值]
- [开始索引:] 从开始索引截取到列表的最后
- [:结束索引] 从开头截取到结束索引之前(结束索引-1)
- [开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
- [开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
- [:]或[::] 截取所有列表
开始索引
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
#从开始索引截取到列表的最后
res= listvar[1:]
print(res)
执行
[root@node10 python]# python3 test.py
['关羽', '张飞', '曹操', '许褚', '荀彧', '诸葛亮', '赵云', '黄忠']
结束索引
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
#从开头截取到结束索引之前(结束索引-1)
res = listvar[:4]
print(res)
执行
[root@node10 python]# python3 test.py
['刘备', '关羽', '张飞', '曹操']
开始索引:结束索引
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
# (3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
res = listvar[4:6]
print(res)
执行
[root@node10 python]# python3 test.py test.py
['许褚', '荀彧']
开始索引:结束索引:间隔值
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
# 0 3 6 9 先把数字数出来,通过下标找对应值
res = listvar[::3]
print(res)
# 3 5 7 9
print(listvar[3::2])
# 0 3 6
print(listvar[:5:3])
执行
[root@node10 python]# python3 test.py test.py
['刘备', '曹操', '诸葛亮']
['曹操', '荀彧', '赵云']
['刘备', '曹操']
倒叙
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
print(listvar[::-1])
# -2 -4
print(listvar[-2:-6:-2])
执行
[root@node10 python]# python3 test.py test.py
['黄忠', '赵云', '诸葛亮', '荀彧', '许褚', '曹操', '张飞', '关羽', '刘备']
['赵云', '荀彧']
1.4 列表的获取
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
res = listvar[2]
print(res)
res = listvar[-1]
print(res)
执行
[root@node10 python]# python3 test.py test.py
张飞
黄忠
1.5 列表的修改
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
listvar[3] = "123"
print(listvar)
# 如果使用了切片进行修改,右侧必须是可迭代性数据(容器类型数据)
# listvar[2:] = "123"
listvar[2:] = range(0,4)
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
['刘备', '关羽', '张飞', '123', '许褚', '荀彧', '诸葛亮', '赵云', '黄忠']
['刘备', '关羽', 0, 1, 2, 3]
指定间隔
listvar = ["刘备","关羽","张飞","曹操"]
# 如果使用了切片,并且指定了第三个参数间隔值,那么截取几个,就放几个,一一对应
listvar[::2] = ("a","b")
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
['a', '关羽', 'b', '曹操']
1.6 列表的删除
listvar = ["刘备","关羽","张飞","曹操","许褚","荀彧","诸葛亮","赵云","黄忠"]
del listvar[1]
print(listvar) # 可以使用切片删除
del listvar[1:3]
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
['刘备', '张飞', '曹操', '许褚', '荀彧', '诸葛亮', '赵云', '黄忠']
['刘备', '许褚', '荀彧', '诸葛亮', '赵云', '黄忠']
元组当中的一级数据更改不了,但是二级或者多级如果是列表这样的数据可修改
tup = (1,2,3,4,5,[1,2,3,45])
tup[-1][-1] = 54
print(tup)
执行
[root@node10 python]# python3 test.py test.py
(1, 2, 3, 4, 5, [1, 2, 3, 54])
二 列表的相关函数
1 append
功能:向列表的末尾添加新的元素
格式:列表.append(值)
返回值:None
注意:新添加的值在列表的末尾,该函数直接操作原有列表
2.1 增加函数
2.1.1 append
listvar = [1,2,3,4,5]
listvar.append(6)
print(listvar)
listvar.append([12,3])
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6, [12, 3]]
2.1.2 insert
功能:在指定索引之前插入元素
格式:列表.insert(索引,值)
返回值:None
注意:直接改变原有列表
示例
listvar = [1,2,3,4,5]
listvar.insert(2,7)
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[1, 2, 7, 3, 4, 5]
2.1.3 extend
功能:迭代追加所有元素
格式:列表.extend(可迭代性数据)
返回值:None
注意:直接改变原有列表
示例
listvar = [1,2,3,4,5]
listvar.extend(("你","好"))
# listvar.extend({'a':1,"b":2}) 语法上允许
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[1, 2, 3, 4, 5, '你', '好']
2.2 删除
2.2.1 pop
功能:通过指定索引删除元素,若没有索引移除最后那个
格式:列表.pop(索引)
返回值:删除的元素
(注意:没有指定索引,默认移除最后一个元素 )
示例
listvar = [1,2,3,4,5]
res = listvar.pop()
print(res)
print(listvar)
listvar = [1,2,3,4,5]
res = listvar.pop(3) # 指定索引
# res = listvar.pop(33) 删除不存在的报错
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
5
[1, 2, 3, 4]
[1, 2, 3, 5]
2.2.2 remove
功能:通过给予的值来删除,如果多个相同元素,默认删除第一个
格式:列表.remove(值)
返回值:无
(注意:如果有索引的情况推荐使用pop,效率高于remove)
示例
listvar = [1,2,3,4,5]
listvar.remove(4)
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[1, 2, 3, 5]
2.2.3 clear
功能:清空列表
格式:列表.clear()
返回值:空列表
示例
listvar = [1,2,3,4,5]
listvar.clear()
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[]
2.3 列表其他操作
改查 具体参数列表相关操作
2.3.1 index查找
功能:获取某个值在列表中的索引
格式:列表.index(值[,start][,end]) # [] 表达参数可选项
返回值:找到返回索引 (找不到报错)
示例
listvar = [1,2,3,4,54,4,90,4,78,78787,7878]
res = listvar.index(3)
print(res)
# res = listvar.index(99) # 如果索引不存在直接报错
res = listvar.index(4,4) # 5
print(res)
res = listvar.index(4,6,9) # 指定索引的查找范围,高位取不到
print(res)
执行
[root@node10 python]# python3 test.py test.py
2
5
7
2.3.2 count计数
功能:计算某个元素出现的次数
格式:列表.count(值)
返回值:次数
示例
listvar = [1,2,3,4,54,4,90,4,78,78787,7878]
res= listvar.count(4)
print(res)
执行
[root@node10 python]# python3 test.py test.py
3
2.3.3 sort排序
功能:列表排序(默认小到大排序)
格式:列表.sort(reverse=False)
返回值:None
注意:直接更改原列表
示例
listvar = [78,12,-3,99]
# 默认从小到大排序 (正序)
listvar.sort()
print(listvar)
# 从大到小排序 用reverse = True (倒叙)
listvar.sort(reverse=True)
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[-3, 12, 78, 99]
[99, 78, 12, -3]
2.4.4 reverse反转
功能:列表反转操作
格式:列表.reverse()
返回值:None
注意:直接更改原列表
示例
listvar = [78,12,-3,99]
listvar.reverse()
print(listvar)
执行
[root@node10 python]# python3 test.py test.py
[99, -3, 12, 78]
011.Python的列表的相关操作的更多相关文章
- 初识python 字符串 列表 字典相关操作
python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // ...
- python对数据类型的相关操作
一.int的相关操作 int只有一个相关操作,bit_length() 用于计算一个数字的二进制长度 二.bool的相关操作 1.把数字转换成bool,除了0,返回的都是True a = 10 p ...
- Python基础——列表、元组操作
列表.元组操作 列表: 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0 ...
- Python学习-列表元组字典操作
一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...
- 026.Python面向对象类的相关操作以及对象和类的删除操作
类的相关操作 定义的类访问共有成员的成员和方法 定义的类动态添加公有成员的属性和方法 定义的类删除公有成员的属性和方法 1 定义一个基本的类 #定义一个类 class Plane(): #添加一个共有 ...
- Python3中的List列表的相关操作
列表对象内建函数 1. append(obj) 在列表的末尾添加新元素obj.例: >>> a = ['a', 'b', 'c'] >>> a.append('d' ...
- Python 基础之集合相关操作与函数和字典相关函数
一:集合相关操作与相关函数 1.集合相关操作(交叉并补) (1)intersection() 交集 set1 = {"one","two","thre ...
- python(列表及列表的相关操作、元组和range)
1.什么是列表 列表是一个课表的数据类型 列表有[]来表示,每一项元素用逗号隔开,列表什么都能装.是能装对象的对象. 列表可以装大量数据. 2.列表的索引和切片 列表和字符串一样,也有索引和切片.只不 ...
- Json概述以及python对json的相关操作
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programming Langu ...
随机推荐
- Kafka核心技术与实战,分布式的高性能消息引擎服务
Kafka是LinkedIn开发并开源的一套分布式的高性能消息引擎服务,是大数据时代数据管道技术的首选. 如今的Kafka集消息系统.存储系统和流式处理平台于一身,并作为连接着各种业务前台和数据后台的 ...
- HarmonyOS开发者看过来,HDD上海站传递的重要信息都在这里
4月17日,颇有HarmonyOS年度总结性质的HarmonyOS开发者日活动上海站正式开始. 活动中,华为消费者业务AI与智慧全场景业务部副总裁段孟对HarmonyOS生态建设的最新进展做了发言,并 ...
- 17. Vue2.4+新增属性$listeners
现在我们来讨论一种情况,A组件与C组件怎么通信,我们有多少种解决方案? 我们使用VueX来进行数据管理,但是如果项目中多个组件共享状态比较少,项目比较小,并且全局状态比较少,那使用VueX来实现该功能 ...
- golang channel的行为
1. 读nil的channel是永远阻塞的.关闭nil的channel会造成panic. 2. closed channel的行为: (1)向close的channel发消息会panic,关闭一个已经 ...
- 多维数据处理之主成分分析(PCA)
在灵巧手与假手理论中,为了研究人手的运动协同关系,需要采集各个关节的运动学量或者多个采集点的肌电信号,然而由于人手关节数目或者EMG采集点数量较多,加上多次采样,导致需要过多的数据需要处理.然而事实上 ...
- Thinkphp之PHPExcel类库函数的官方读取的几个例子
1.使用 PHPExcel_IOFactory 读取文件 $objPHPExcel = PHPExcel_IOFactory::load($inputFileName); 2.使用一个特定的读取类,读 ...
- 缓冲区溢出分析第04课:ShellCode的编写
前言 ShellCode究竟是什么呢,其实它就是一些编译好的机器码,将这些机器码作为数据输入,然后通过我们之前所讲的方式来执行ShellCode,这就是缓冲区溢出利用的基本原理.那么下面我们就来编写S ...
- C#-自动获取IP
//自动获取ip rip是个下拉列表 public void GetIp() { try { string strHostName = Dns.GetHostName(); //得到本机的主机名 IP ...
- 基于react hooks,antd4 配置生成表单并自动排列
react后台项目,大多都是表单处理,比如下列4种常见1*n布局 (如果手工编码,大量的Row,Col, Form.Item的嵌套,排列,如果加上联动处理,代码将十分臃肿,不易维护) 一行一列 一行两 ...
- LeetCode---84. 柱状图中最大的矩形(hard)
题目:84. 柱状图中最大的矩形 给定 n 个非负整数,用来表示柱状图中各个柱子的高度.每个柱子彼此相邻,且宽度为 1 . 求在该柱状图中,能够勾勒出来的矩形的最大面积. 示例: 输入: [2,1,5 ...