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 相关文章推荐
动感网页相册 python编写简单文件夹内图片浏览工具
Aug 17 Python
python获取指定时间差的时间实例详解
Apr 11 Python
python编程实现12306的一个小爬虫实例
Dec 27 Python
Python实现将json文件中向量写入Excel的方法
Mar 26 Python
对python 矩阵转置transpose的实例讲解
Apr 17 Python
python利用Opencv实现人脸识别功能
Apr 25 Python
在Tensorflow中实现梯度下降法更新参数值
Jan 23 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
Mar 10 Python
判断Threading.start新线程是否执行完毕的实例
May 02 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 Python
Python读取ini配置文件传参的简单示例
Jan 05 Python
PyQt5 QThread倒计时功能的实现代码
Apr 02 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外部执行命令函数用法小结
2016/10/11 PHP
基于PHP实现栈数据结构和括号匹配算法示例
2017/08/10 PHP
php更新cookie内容的详细方法
2019/09/30 PHP
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
javascript奇异的arguments分析
2010/10/20 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
浅谈javascript面向对象程序设计
2015/01/21 Javascript
jQuery实现表格行上移下移和置顶的方法
2015/05/22 Javascript
在JavaScript中用getMinutes()方法返回指定的分时刻
2015/06/10 Javascript
JS获取子窗口中返回的数据实现方法
2016/05/28 Javascript
详解用Node.js实现Restful风格webservice
2017/09/29 Javascript
关于HTTP传输中gzip压缩的秘密探索分析
2018/01/12 Javascript
深入浅析var,let,const的异同点
2018/08/07 Javascript
小程序实现展开/收起的效果示例
2018/09/22 Javascript
vue中导出Excel表格的实现代码
2018/10/18 Javascript
微信小程序实现的五星评价功能示例
2019/04/25 Javascript
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
JQuery绑定事件四种实现方法解析
2020/12/02 jQuery
[01:32]TI奖金增速竟因它再创新高!DOTA2勇士令状不朽珍藏Ⅰ饰品欣赏
2018/05/18 DOTA
[12:21]VICI vs TNC (BO3)
2018/06/07 DOTA
pip命令无法使用的解决方法
2018/06/12 Python
python3的数据类型及数据类型转换实例详解
2019/08/20 Python
使用OpenCV实现仿射变换—平移功能
2019/08/29 Python
Python 切分数组实例解析
2019/11/07 Python
numpy 声明空数组详解
2019/12/05 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
python如何代码集体右移
2020/07/20 Python
CSS3属性 line-clamp控制文本行数的使用
2020/03/19 HTML / CSS
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
电气自动化大学生求职信
2013/10/16 职场文书
英语专业毕业生求职简历的自我评价
2013/10/24 职场文书
财务管理职业生涯规划书
2014/02/26 职场文书
2014年大学生四年规划书范文
2014/04/03 职场文书
党员反四风学习心得体会
2016/01/22 职场文书
关于React Native 无法链接模拟器的问题
2021/06/21 Javascript
golang实现浏览器导出excel文件功能
2022/03/25 Golang