Python列表操作方法详解


Posted in Python onFebruary 09, 2020

本节内容

  • 0、列表常用功能汇总
  • 1、定义列表
  • 2、访问列表中的元素
  • 3、切片
  • 4、追加
  • 5、插入
  • 6、修改
  • 7、拷贝
  • 8、删除
  • 9、扩展
  • 10、统计
  • 11、翻转
  • 12、排序
  • 13、获取下标值
  • 14、清空列表

列表是Python最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作

0、列表常用功能汇总

Python列表操作方法详解

1、定义列表

>>> name=[]#定义空列表
>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
#定义一个非空列表

 2、访问列表中的元素

>>> name=[]
>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name[0]
'luoahong'
>>> name[1]
'chenqun'
>>> name[2]
'wenhai'
>>> name[3]
'daiqiao'
>>> name[-1]#倒着取最后一个值
'guiwei'
>>> name[-2]
'xiedi'

 注:列表的下标值是从0开始取值的

3、切片

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name[1:3]
['chenqun', 'wenhai']
>>> name[1:-1]
['chenqun', 'wenhai', 'daiqiao', 'xiedi']
>>> name[0:3]
['luoahong', 'chenqun', 'wenhai']
>>> name[:3]
['luoahong', 'chenqun', 'wenhai']
>>> name[3:]
['daiqiao', 'xiedi', 'guiwei']
>>> name[:2]
['luoahong', 'chenqun']
>>> name[::2]
['luoahong', 'wenhai', 'xiedi']

切片小结:

①序列始终都是从左向右切片的,不能是从右向左

①列表切片时,起始位的元素是包括的,结束位的元素是不包括(又叫顾头不顾尾),最后一个位置表示步长(names[开始位:结束位:步长])

②如果从0位置取值,0可以省略

③想取最后一个值时,结束位不能是-1,因为结束位的元素不包括,所以只能留空

4、追加(append(元素))

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.append("liuhailin")
>>> name
['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei', 'liuhailin']#liuhailin是新加的

5、插入(insert(下标值,插入的内容))

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.insert(0,"liyang")#0表示需要插入的下标值,'1'表示插入的内容
>>> name
['liyang', 'luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei'] 
#在下标值为0的地方插入liyang

 6、修改

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name[1]='chenqundage'
>>> name
['luoahong', 'chenqundage', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']

 注:修改列表中的元素,直接是 names[下标值] = 新值

7、拷贝(copy())

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name2=name.copy()
>>> name2
['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']

 注:这边的copy都是浅copy,只能copy第一层。深浅拷贝的详细信息:

8、删除(del、remove(元素)、pop())

#根据下标值删除元素
>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> del name[0]
>>> name
['chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']
#根据元素删除
>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.remove('xiedi')
>>> name
['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'guiwei']
#删除最后一个
>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.pop()
'guiwei'
>>>
>>> 

 注:

①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.pop(1) #在输入下标值得情况下和del的效果是一样的
'chenqun'
>>> name
['luoahong', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']

②del关键字不仅可以删除列表中的元素,也可以删除变量

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
#删除name这个变量
 del name
>>> name
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
NameError: name 'name' is not defined

 注:

①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的

②del关键字不仅可以删除列表中的元素,也可以删除变量

 9、扩展(extend)

>>> name1=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name2=['1','2','3','4','5','6']
>>> name1.extend(name2)
>>> name1
['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei', '1', '2', '3', '4', '5', '6']

注:names2的列表合并到names1中,但是,names2这个列表依然存在,如果想删除names2这个变量,则只需del names2即可

10、统计(count(元素))

>>> name1=['luoahong','chenqun','wenhai','daiqiao','chenqun','xiedi','guiwei','chenqun']
>>> name1.count('chenqun')#统计元素'chenqun'元素的个数
3

 11、翻转(reverse())

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.reverse()
>>> name
['guiwei', 'xiedi', 'daiqiao', 'wenhai', 'chenqun', 'luoahong'] #将整个列表翻转过来

 12、排序(sort())

>>> name=['4','3','2','1']
>>> name.sort()
>>> name
['1', '2', '3', '4']

 13、获取下标值(index(元素))

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.index('chenqun')
1

 14、清空列表(clear())

>>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
>>> name.clear()
NameError: name 'names' is not defined
>>> name
[]

更多关于Python列表操作方法请查看下面的相关链接

Python 相关文章推荐
利用Python的Flask框架来构建一个简单的数字商品支付解决方案
Mar 31 Python
python邮件发送smtplib使用详解
Jun 16 Python
python读取文本中的坐标方法
Oct 14 Python
PyQt5+requests实现车票查询工具
Jan 21 Python
python队列Queue的详解
May 10 Python
flask 实现token机制的示例代码
Nov 07 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
Dec 05 Python
python面向对象之类属性和类方法案例分析
Dec 30 Python
Python OpenCV读取显示视频的方法示例
Feb 20 Python
Python threading.local代码实例及原理解析
Mar 16 Python
Spring Boot中使用IntelliJ IDEA插件EasyCode一键生成代码详细方法
Mar 20 Python
python 发送邮件的示例代码(Python2/3都可以直接使用)
Dec 03 Python
Python2与Python3的区别详解
Feb 09 #Python
python默认参数调用方法解析
Feb 09 #Python
Python集合操作方法详解
Feb 09 #Python
Python字符编码转码之GBK,UTF8互转
Feb 09 #Python
Python基础之字符串操作常用函数集合
Feb 09 #Python
python连接PostgreSQL过程解析
Feb 09 #Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
Feb 09 #Python
You might like
PHP 加密与解密的斗争
2009/04/17 PHP
表格展示无限级分类(PHP版)
2012/08/21 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
Session 失效的原因汇总及解决丢失办法
2015/09/30 PHP
Yii模型操作之criteria查找数据库的方法
2016/07/15 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
Firefox+FireBug使JQuery的学习更加轻松愉快
2010/01/01 Javascript
js 省地市级联选择
2010/02/07 Javascript
基于jquery的表格排序
2010/09/11 Javascript
Extjs实现进度条的两种便捷方式
2013/09/26 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
常用DOM整理
2015/06/16 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
JavaScript对JSON数据进行排序和搜索
2017/07/24 Javascript
vue axios 给生产环境和发布环境配置不同的接口地址(推荐)
2018/05/08 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
2018/11/20 jQuery
微信小程序中使用echarts的实现方法
2019/04/24 Javascript
python3图片转换二进制存入mysql
2013/12/06 Python
Python实现短网址ShortUrl的Hash运算实例讲解
2015/08/10 Python
深入理解Python中装饰器的用法
2016/06/28 Python
Python 查看文件的编码格式方法
2017/12/21 Python
python psutil库安装教程
2018/03/19 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
2018/07/12 Python
python 切换root 执行命令的方法
2019/01/19 Python
python多线程同步实例教程
2019/08/11 Python
详解django实现自定义manage命令的扩展
2019/08/13 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
详解Python 循环嵌套
2020/07/09 Python
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
魔声耳机官方网站:Monster是世界第一品牌的高性能耳机
2016/10/26 全球购物
美国Curacao百货连锁店网站:iCuracao.com
2019/07/20 全球购物
印度排名第一的蛋糕、鲜花和礼品送货:Winni
2019/08/02 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
文明寄语大全
2014/04/11 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书