Python 列表(List)操作方法详解


Posted in Python onMarch 11, 2014

列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。

一、创建一个列表
只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];

与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。
二、访问列表中的值
使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示:
#!/usr/bin/pythonlist1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];

print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

以上实例输出结果:
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]

三、更新列表
你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项,如下所示:
#!/usr/bin/python
list = ['physics', 'chemistry', 1997, 2000];
print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];

以上实例输出结果:

Value available at index 2 :
1997
New value available at index 2 :
2001

四、删除列表元素
可以使用 del 语句来删除列表的的元素,如下实例:
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000];
print list1;
del list1[2];
print "After deleting value at index 2 : "
print list1;

以上实例输出结果:
['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]

五、Python列表脚本操作符
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

如下所示:

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 迭代

六、Python列表截取
Python的列表截取与字符串操作类型,如下所示:
L = ['spam', 'Spam', 'SPAM!']

操作:
Python 表达式 结果 描述
L[2] 'SPAM!' 读取列表中第三个元素
L[-2] 'Spam' 读取列表中倒数第二个元素
L[1:] ['Spam', 'SPAM!'] 从第二个元素开始截取列表

七、Python列表操作的函数和方法
列表操作包含以下函数:
1、cmp(list1, list2):比较两个列表的元素
2、len(list):列表元素个数
3、max(list):返回列表元素最大值
4、min(list):返回列表元素最小值
5、list(seq):将元组转换为列表
列表操作包含以下方法:
1、list.append(obj):在列表末尾添加新的对象
2、list.count(obj):统计某个元素在列表中出现的次数
3、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4、list.index(obj):从列表中找出某个值第一个匹配项的索引位置
5、list.insert(index, obj):将对象插入列表
6、list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7、list.remove(obj):移除列表中某个值的第一个匹配项
8、list.reverse():反向列表中元素
9、list.sort([func]):对原列表进行排序
Python 相关文章推荐
基于wxpython开发的简单gui计算器实例
May 30 Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
Apr 19 Python
详解Django中六个常用的自定义装饰器
Jul 04 Python
Django框架orM与自定义SQL语句混合事务控制操作
Jun 27 Python
python射线法判断一个点在图形区域内外
Jun 28 Python
pytorch dataloader 取batch_size时候出现bug的解决方式
Feb 20 Python
linux 下selenium chrome使用详解
Apr 02 Python
Python Dict找出value大于某值或key大于某值的所有项方式
Jun 05 Python
python实现批量命名照片
Jun 18 Python
CentOS 7如何实现定时执行python脚本
Jun 24 Python
Django返回HTML文件的实现方法
Sep 17 Python
python 调用Google翻译接口的方法
Dec 09 Python
Python基本数据类型详细介绍
Mar 11 #Python
常用python数据类型转换函数总结
Mar 11 #Python
python读取csv文件示例(python操作csv)
Mar 11 #Python
Python help()函数用法详解
Mar 11 #Python
python操作日期和时间的方法
Mar 11 #Python
Python 字符串操作方法大全
Mar 11 #Python
Python去掉字符串中空格的方法
Mar 11 #Python
You might like
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
2015/10/01 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
javascript this用法小结
2008/12/19 Javascript
编写自己的jQuery插件简单实现代码
2011/04/19 Javascript
用js实现输入提示(自动完成)的实例代码
2013/06/14 Javascript
jquery.qrcode在线生成二维码使用示例
2013/08/21 Javascript
jquery+json实现数据列表分页示例代码
2013/11/15 Javascript
jquery select 设置默认选中的示例代码
2014/02/07 Javascript
浅析javascript中函数声明和函数表达式的区别
2015/02/15 Javascript
原生js和jquery实现图片轮播淡入淡出效果
2015/04/23 Javascript
简介JavaScript中search()方法的使用
2015/06/06 Javascript
Bootstrap每天必学之附加导航(Affix)插件
2016/04/25 Javascript
js中获取时间new Date()的全面介绍
2016/06/20 Javascript
js实现点击按钮弹出上传文件的窗口
2016/12/23 Javascript
JavaScript设计模式之调停者模式实例详解
2018/02/03 Javascript
浅析vue.js数组的变异方法
2018/06/30 Javascript
bootstrap自定义样式之bootstrap实现侧边导航栏功能
2018/09/10 Javascript
对layui中的onevent 和event的使用详解
2019/09/06 Javascript
js面向对象之实现淘宝放大镜
2020/01/15 Javascript
Python中DJANGO简单测试实例
2015/05/11 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
2016/06/07 Python
Python入门_浅谈for循环、while循环
2017/05/16 Python
详解django.contirb.auth-认证
2018/07/16 Python
django之跨表查询及添加记录的示例代码
2018/10/16 Python
pandas.dataframe按行索引表达式选取方法
2018/10/30 Python
TensorFlow的环境配置与安装教程详解(win10+GeForce GTX1060+CUDA 9.0+cuDNN7.3+tensorflow-gpu 1.12.0+python3.5.5)
2020/06/22 Python
Python3如何实现Win10桌面自动切换
2020/08/11 Python
Django DRF认证组件流程实现原理详解
2020/08/17 Python
Python OpenCV中的numpy与图像类型转换操作
2020/12/11 Python
Python实现王者荣耀自动刷金币的完整步骤
2021/01/22 Python
有abstract方法的类一定要用abstract修饰吗
2016/03/14 面试题
婚礼主持结束词
2014/03/13 职场文书
小学优秀班主任事迹材料
2014/05/17 职场文书
个人的事迹材料怎么写
2019/04/24 职场文书
「租借女友」第2季樱泽墨角色PV&新视觉图公开
2022/03/21 日漫