Python - list 列表常见方法
list.append(x)
介绍
- 在列表的末尾添加一个元素
- 相当于 a[len(a):] = [x]
返回值
None
栗子
# append
a = [1, 2, 3]
b = [4, 5, 6] print(a.append(1))
print(a) a.append(b)
print(a) # 输出结果
None
[1, 2, 3, 1]
[1, 2, 3, 1, [4, 5, 6]]
a.append(b) 会将整个列表当做一个元素添加进去哦
list.extend(iterable)
介绍
- 使用可迭代对象中的所有元素来扩展列表
- 粗俗点:在列表后面接另一个列表
- 相当于 a[len(a):] = iterable
返回值
None
栗子
# extend
a = [1, 2, 3]
b = [4, 5, 6] print(a.extend([]))
print(a) a.extend(b)
print(a) a = [1, 2, 3]
b = [4, 5, 6] print(a + b) # 输出结果
None
[1, 2, 3]
[1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6]
extend() 有点像列表相加,但还是有区别的
a.extend(b) 和 a+b 的区别
- extend() 传的参数只要求是可迭代对象
- 但是列表相加,要求都是列表
- 而可迭代对象的讲解可以参考这篇文章:https://www.cnblogs.com/poloyy/p/14658433.html
list.insert(i, x)
介绍
- 在给定的位置插入一个元素
- i:是要插入的元素的索引
- x:插入的元素值
- a.insert(0, x) 插入列表首位
- a.insert(len(a), x) 等同于 a.append(x)
返回值
None
栗子
# insert
a = [1, 2, 3]
print(a.insert(0, 0))
print(a) b = [4, 5, 6]
a.insert(999, b)
print(a) # 输出结果
None
[0, 1, 2, 3]
[0, 1, 2, 3, [4, 5, 6]]
如果 i 值大于列表长度,那么就会在列表末尾添加元素
list.remove(x)
介绍
- 移除列表中第一个值为 x 的元素
- 如果没有这样的元素,则抛出 ValueError 异常
返回值
None
栗子
# remove
a = [1, 2, 3, 1]
print(a.remove(1))
print(a) a.remove(4) # 输出结果
None
[2, 3, 1]
Traceback (most recent call last):
a.remove(4)
ValueError: list.remove(x): x not in list
list.pop([i])
介绍
- 删除列表中指定位置的元素并返回它
- 如果没有指定位置,a.pop() 将会删除并返回列表中的最后一个元素
- [i] 代表参数 i 是可选的,不是必填的,不是让你传 [1] 、[2] 这种参数
返回值
被删除的元素值
栗子
# pop
a = [1, 2, 3, 4]
print(a.pop(3))
print(a) a.pop()
print(a) a.pop(1)
print(a) # 输出结果
4
[1, 2, 3]
[1, 2]
[1]
list.clear()
介绍
- 移除列表中的所有元素
- 等价于 del a[:]
返回值
None
栗子
# clear
a = [1, 2, 3, 4]
print(a.clear())
print(a) # 输出结果
None
[]
list.index(x[, start[, end]])
介绍
- 返回列表中第一个值为 x 的元素的索引
- 如果没有这样的元素将会抛出 ValueError 异常
- 可选参数 start 和 end 是切片符号,用于将搜索限制为列表的特定子序列
- 返回的索引是相对于整个序列的开始计算的,而不是 start 参数
返回值
索引值
栗子
# index
a = [1, 2, 3, 4]
print(a.index(2))
print(a.index(1, 0, 2))
print(a.index(33)) # 输出结果
1
0
Traceback (most recent call last):
print(a.index(33))
ValueError: 33 is not in list
list.count(x)
介绍
返回元素 x 在列表中出现的次数
返回值
次数
栗子
# count
a = [1, 2, 1, 4]
print(a.count(1))
print(a.count(3)) # 输出结果
2
0
list.sort(*, key=None, reverse=False)
介绍
对列表中的元素进行排序(参数可用于自定义排序)
返回值
None
栗子
# sort
a = [4, 3, 2, 1]
print(a.sort())
print(a) a.sort(reverse=True)
print(a) # 输出结果
None
[1, 2, 3, 4]
[4, 3, 2, 1]
list.reverse()
介绍
翻转列表中的元素
返回值
None
栗子
# reverse()
a = [1, 2, 3, 4]
print(a.reverse())
print(a) # 输出结果
None
[4, 3, 2, 1]
list.copy()
介绍
- 返回列表的一个浅拷贝
- 等价于 a[:]
返回值
原来的列表
栗子
# copy
a = [1, 2, 3, [1, 2, 3]]
print(a.copy()) b = a.copy()
a[1] = 11
print(a)
print(b)
a[3][2] = 22
print(a)
print(b) # 输出结果
[1, 2, 3, [1, 2, 3]]
[1, 11, 3, [1, 2, 3]]
[1, 2, 3, [1, 2, 3]]
[1, 11, 3, [1, 2, 22]]
[1, 2, 3, [1, 2, 22]]
可以从结果看出,的确是浅拷贝
Python - list 列表常见方法的更多相关文章
- Python List 列表list()方法
Python基础数据类型之一列表list,在python中作用很强在,列表List可以包含不同类型的数据对像,同时它是一个有序的变量集合,每个变量可以存储一个地址.所有序列能用到的标准操作方法,列表也 ...
- Python循环列表的方法
python循环列表的几种方法: 第一,依次打印列表中的各项值. 1 #!usr/bin/env python3 2 #!-*- Coding:utf-8 -*- 3 4 ''' 5 多种循环列表的方 ...
- python之列表及其方法---整理集
列表类,类名是list 通过list类创建对象,使用中括号 列表特性: 使用中括号括起来 中间用逗号分隔每个元素 元素可以是数字.字符串.布尔值.列表 列表中可以嵌套列表 列表中每个元素的下标从0开始 ...
- python之列表常见操作
list = [1,2,3,4,5,6,7,8,9,0,0,0,0,0] listSet = list.set(list)#将列表中的数据进行去重处理 此时listSet中的数据为[1,2,3,4,5 ...
- python: 列表的方法
操作 函数 使用方法 备注 索引 index in: example.index(‘creative’) --- 1 in:example[1,] --- [’creative’, [’京东’,996 ...
- Python day3_string的常见方法2_笔记
1.分割字符串的4个方法partition,rpartition,split,rsplit(区别,partition是仅分割一个,split分割全部,r是从右边开始分割,split可以传参数,自定义分 ...
- Python day4_list的常见方法1_笔记(浅拷贝和深拷贝的简述)
li=[1,2,3,'55dd'] li.clear()#清除列表内容 print(li) li.append(1)#追加 li.append(3) print(li) #拓展:直接赋值和copy和d ...
- python清空列表的方法
1.大数据量的list,要进行局部元素删除,尽量避免用del随机删除,非常影响性能,如果删除量很大,不如直接新建list,然后用下面的方法释放清空旧list. 2.对于一般性数据量超大的list,快速 ...
- python中空列表判断方法总结,欢迎补充
--代码-- if __name__ == '__main__': l = [] print(l.__len__() == 0) print(l.__sizeof__() == 40) print(l ...
随机推荐
- cuDNN 功能模块解析
Abstract 本cuDNN 8.0.4开发人员指南概述了cuDNN功能,如可自定义的数据布局.支持灵活的dimension ordering,striding,4D张量的子区域,这些张量用作其所有 ...
- Python_selenium页面元素整合设计经验
- Samba 服务基础
配置SMB共享,跨平台的共享,Windows与Linux的共享 • Samba 软件项目 用途:为客户机提供共享使用的文件夹 协议:SMB(TCP 139).CIFS(TCP 445) • 所需软件包 ...
- 【Android编程实战】源码级免杀_Dex动态加载技术_Metasploit安卓载荷傀儡机代码复现
/文章作者:MG193.7 CNBLOG博客ID:ALDYS4 QQ:3496925334/ 在读者阅读本文章前,建议先阅读笔者之前写的一篇对安卓载荷的分析文章 [逆向&编程实战]Metasp ...
- 【题解】数颜色 STL vector数组
小 C 的兔子不是雪白的,而是五彩缤纷的. 题目 题目描述 小 C 的兔子不是雪白的,而是五彩缤纷的.每只兔子都有一种颜色,不同的兔子可能有 相同的颜色.小 C 把她标号从 1 到 n 的 n只兔子排 ...
- NOIP模拟测试5「星际旅行·砍树·超级树」
星际旅行 0分 瞬间爆炸. 考试的时候觉得这个题怎么这么难, 打个dp,可以被儿子贡献,可以被父亲贡献,还有自环,叶子节点连边可以贡献,非叶子也可以贡献,自环可以跑一回,自环可以跑两回, 关键是同一子 ...
- 图解 Redis | 不多说了,这就是 RDB 快照
大家好,我是小林. 虽说 Redis 是内存数据库. 但是它为数据的持久化提供了两个技术,分别是「 AOF 日志和 RDB 快照」. 这两种技术都会用各用一个日志文件来记录信息,但是记录的内容是不同的 ...
- Python如何设计面向对象的类(上)
Python是一门高级语言,支持面向对象设计,如何设计一个符合Python风格的面向对象的类,是一个比较复杂的问题,本文提供一个参考,表达一种思路,探究一层原理. 目标 期望实现的类具有以下基本行为: ...
- AWS上的EFK环境部署
1.准备工作及组件 本章使用自建服务以及aws服务来配置使用. 服务 版本 作用 filebeat 6.7.2→ 7.3.1 节点日志收集,只完成少量比如多行合并工作 logstash 6.4.2→7 ...
- Linux中useradd的用法
语法:useradd [选项] 用户名 选项: -d<登陆目录> 指定新用户登陆的起始目录,默认为/home -e<有效期限> 指定用户的有效期限,格式为 YYYY-MM-DD ...