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 相关文章推荐
haskell实现多线程服务器实例代码
Nov 26 Python
python实现telnet客户端的方法
Apr 15 Python
Python的Django框架中TEMPLATES项的设置教程
May 29 Python
Python中的一些陷阱与技巧小结
Jul 10 Python
Python 搭建Web站点之Web服务器网关接口
Nov 06 Python
Python输出由1,2,3,4组成的互不相同且无重复的三位数
Feb 01 Python
python中break、continue 、exit() 、pass终止循环的区别详解
Jul 08 Python
PyQt Qt Designer工具的布局管理详解
Aug 07 Python
利用django model save方法对未更改的字段依然进行了保存
Mar 28 Python
matplotlib基础绘图命令之errorbar的使用
Aug 13 Python
Python爬虫之Selenium设置元素等待的方法
Dec 04 Python
Pandas搭配lambda组合使用详解
Jan 22 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
PHP Ajax实现页面无刷新发表评论
2007/01/02 PHP
PHP异常处理Exception类
2015/12/11 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
2017/02/15 PHP
javascript iframe中打开文件,并检测iframe存在否
2008/12/28 Javascript
javascript 写类方式之八
2009/07/05 Javascript
Mootools 1.2教程 类(一)
2009/09/15 Javascript
JS 文件本身编码转换 图文教程
2009/10/12 Javascript
一款js和css代码压缩工具[附JAVA环境配置方法]
2010/04/16 Javascript
jquery实现商品拖动选择效果代码(自写)
2013/05/28 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
javascript实现下拉提示选择框
2015/12/29 Javascript
实例详解AngularJS实现无限级联动菜单
2016/01/15 Javascript
JavaScript简单实现弹出拖拽窗口(一)
2016/06/17 Javascript
EasyUI修改DateBox和DateTimeBox的默认日期格式示例
2017/01/18 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
原生JS 购物车及购物页面的cookie使用方法
2017/08/21 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
通过函数作用域和块级作用域看javascript的作用域链
2018/08/05 Javascript
layUI实现列表查询功能
2019/07/27 Javascript
js最全的数组的降维5种办法(小结)
2020/04/28 Javascript
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
详解Python中的循环语句的用法
2015/04/09 Python
实例Python处理XML文件的方法
2015/08/31 Python
使用Python写一个小游戏
2018/04/02 Python
python+opencv3生成一个自定义纯色图教程
2020/02/19 Python
opencv python在视屏上截图功能的实现
2020/03/05 Python
python如何操作mysql
2020/08/17 Python
css 省略号 css3让多余的字符串消失并附加省略号的实现代码
2013/02/07 HTML / CSS
澳大利亚商务邀请函
2014/01/17 职场文书
工作决心书
2014/03/11 职场文书
2015年话务员工作总结
2015/04/29 职场文书
婚宴祝酒词大全
2015/08/10 职场文书
2016党员入党决心书
2015/09/22 职场文书
Django使用redis配置缓存的方法
2021/06/01 Redis
解决vue-router的beforeRouteUpdate不能触发
2022/04/14 Vue.js