Python列表常见操作详解(获取,增加,删除,修改,排序等)


Posted in Python onFebruary 18, 2019

本文实例讲述了Python列表常见操作。分享给大家供大家参考,具体如下:

列表是由一系列按特定顺序排列的元素组成的对象。因为列表通常包含多个元素, 所以建议给列表指定一个表示复数的名称。

我们用方括号( [] ) 来表示列表, 并用逗号来分隔其中的元素。

types=['娱乐','体育','科技']
print(types)

运行结果:

['娱乐', '体育', '科技']

可以看到,打印列表的同时,也会将方括号打印出来。

1 获取元素

要获取列表中的某个元素, 在方括号内指定元素的索引即可:

print('第三个类型:'+types[2])

运行结果:

第三个类型:科技

当我们请求获取列表元素时, 只会返回该元素本身。

2 索引从 0 开始

跟大多数编程语言相同,索引从 0 开始计数。因此,需要获取列表的任何元素, 都可将其位置减1, 作为索引。

将索引指定为 -1,还可以获取最后一个列表元素,这样就可以在不知道列表长度的情况下,获取最后一个元素:

print('最后一个:'+types[-1])

运行结果:

最后一个:科技

这种语法也适用于其他负数索引。索引 -2 获取倒数第二个列表元素, 索引 -3 获取倒数第三个列表元素, 以此类推。

print('倒数第二个:'+types[-2])

运行结果:

倒数第二个:体育

3 新增元素

  • 3.1 列表末尾

append() 方法可以将元素附加到列表末尾:

types.append('财经')
print(types)

运行结果:

['娱乐', '体育', '科技', '财经']

append() 方法很适合动态地创建列表。我们可以先创建一个空列表, 然后再使用一系列的append() 方法为列表添加元素。

colors=[]
colors.append('绿色')
colors.append('蓝色')
colors.append('紫色')
print(colors)

运行结果:

['绿色', '蓝色', '紫色']

  • 3.2 指定位置

insert() 可以在列表的任意位置添加新元素。这个方法的入参是新元素的索引和值。

colors.insert(0,'红色')
print(colors)

运行结果:

['红色', '绿色', '蓝色', '紫色']

在这个示例中, 值 ' 红色' 被插入到了列表头,列表中既有的元素都右移了一个位置。

4 修改元素

修改列表元素的语法与获取列表元素的语法相似。我们可指定列表名、要修改的元素索引以及新值:

colors[0]='白色'
print(colors)

运行结果:

['白色', '绿色', '蓝色', '紫色']

5 删除元素

  • 5.1 del()

如果知道要删除的元素在列表中的位置,那么可以使用 del():

del colors[0]
print(colors)

运行结果:

['绿色', '蓝色', '紫色']

  • 5.2 pop()

把列表想象成一个栈。pop() 方法会弹出栈顶元素(即列表末尾最后一个元素),并返回这个元素。

print('执行前:'+str(colors))
poped_color=colors.pop()
print('栈顶元素:'+poped_color)
print('执行后:'+str(colors))

运行结果:

执行前:['绿色', '蓝色', '紫色']
栈顶元素:紫色
执行后:['绿色', '蓝色']

只要指定好要删除的元素索引,pop() 也可以用来删除列表中任何位置的元素:

print('执行前:'+str(colors))
poped_color=colors.pop(0)
print('删除的元素:'+poped_color)
print('执行后:'+str(colors))

运行结果:

执行前:['绿色', '蓝色']
删除的元素:绿色
执行后:['蓝色']

  • 5.3 比较 del()pop()

del() :从列表中删除一个元素, 且不再使用它。
pop():从列表中删除一个元素, 且还需要使用它。

  • 5.4 根据值删除 remove()
print('执行前:'+str(colors))
colors.remove('蓝色')
print('执行后:'+str(colors))

运行结果:

执行前:['蓝色']
执行后:[]

**注意:**remove() 只会删除第一个指定的值。 如果需要删除多个指定的值, 那么就需要使用循环咯O(∩_∩)O~

6 排序

  • 6.1 永久性排序 sort()
types=['sport','travel','business']
types.sort()
print("按字母顺序正序排序后:"+str(types));
types.sort(reverse=True)
print("按字母顺序逆序排序后:"+str(types));

运行结果:

按字母顺序正序排序后:['business', 'sport', 'travel']
按字母顺序逆序排序后:['travel', 'sport', 'business']

sort() 会永久性(再也恢复不回去咯)地改变列表元素的排列顺序(按字母顺序)。如果需要对中文的拼音进行排序,需要引入第三方库。

sort() 方法传递参数 reverse=True,就可以按照字母顺序逆序的规则来排列元素。

  • 6.2 临时排序 sorted()

函数sorted() 可以保留列表元素原有的排列顺序, 同时返回排序后的列表。

types=['sport','travel','business']
print("排序后:"+str(sorted(types)));
print("原列表:"+str(types));
print("按字母顺序逆序排序后:"+str(sorted(types,reverse=True)));

运行结果:

排序后:['business', 'sport', 'travel']
原列表:['sport', 'travel', 'business']
按字母顺序逆序排序后:['travel', 'sport', 'business']

**注意:**调用函数 sorted() 后, 原有列表的元素排列顺序没有被改变,所以叫临时排序。

sorted() 函数也支持参数 reverse=True,按照字母顺序逆序的规则来排列元素。

  • 6.3 倒序 reverse()

reverse() 会反转列表原有元素的排列顺序。

types=['娱乐','体育','科技']
print('倒序前:'+str(types))
types.reverse()
print('倒序后:'+str(types))

运行结果:

倒序前:['娱乐', '体育', '科技']
倒序后:['科技', '体育', '娱乐']

7 列表长度 len()

types=['娱乐','体育','科技']
print(len(types))

运行结果:

3

8 索引错误

发生索引错误时, 建议将列表或长度打印出来,通过查看这些内容, 可以帮助我们找出错误引发的原因哦O(∩_∩)O~

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Zabbix实现微信报警功能
Oct 09 Python
Python使用zip合并相邻列表项的方法示例
Mar 17 Python
opencv改变imshow窗口大小,窗口位置的方法
Apr 02 Python
mac下pycharm设置python版本的图文教程
Jun 13 Python
python使用suds调用webservice接口的方法
Jan 03 Python
python之线程通过信号pyqtSignal刷新ui的方法
Jan 11 Python
Python流程控制 if else实现解析
Sep 02 Python
Python进程池Pool应用实例分析
Nov 27 Python
python如何通过twisted搭建socket服务
Feb 03 Python
pandas 强制类型转换 df.astype实例
Apr 09 Python
Python读写Excel表格的方法
Mar 02 Python
Python获取指定日期是"星期几"的6种方法
Mar 13 Python
Python File(文件) 方法整理
Feb 18 #Python
Python异常处理知识点总结
Feb 18 #Python
Python os.access()用法实例
Feb 18 #Python
python使用pipeline批量读写redis的方法
Feb 18 #Python
Python变量类型知识点总结
Feb 18 #Python
Python中文编码知识点
Feb 18 #Python
对Python的多进程锁的使用方法详解
Feb 18 #Python
You might like
xajax写的留言本
2006/11/25 PHP
Yii rules常用规则示例
2016/03/15 PHP
利用PHP计算有多少小于当前数字的数字方法示例
2020/08/26 PHP
js 解决“options为空或不是对象”
2008/12/22 Javascript
js去除空格的12种实用方法
2013/11/08 Javascript
JS读取XML文件示例代码
2013/11/15 Javascript
JavaScript中的异常捕捉介绍
2014/12/31 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
2015/11/30 Javascript
微信小程序中单位rpx和rem的使用
2016/12/06 Javascript
利用Vue实现移动端图片轮播组件的方法实例
2017/08/23 Javascript
vue打包后显示空白正确处理方法
2017/11/01 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
Iview Table组件中各种组件扩展的使用
2018/10/20 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
vant中的toast轻提示实现代码
2020/11/04 Javascript
利用Python实现Windows定时关机功能
2017/03/21 Python
python 全文检索引擎详解
2017/04/25 Python
简单实现python进度条脚本
2017/12/18 Python
python三大神器之fabric使用教程
2019/06/10 Python
PyTorch 对应点相乘、矩阵相乘实例
2019/12/27 Python
tensorflow对图像进行拼接的例子
2020/02/05 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
django-csrf使用和禁用方式
2020/03/13 Python
selenium学习教程之定位以及切换frame(iframe)
2021/01/04 Python
CSS3之transition实现下划线的示例代码
2018/05/30 HTML / CSS
购买中国最好的电子产品:Geekbuying
2018/03/13 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
JAVA代码查错题
2014/10/10 面试题
工业自动化毕业生自荐信范文
2014/01/04 职场文书
岗位说明书范文
2014/05/07 职场文书
根叔历年演讲稿
2014/05/20 职场文书
山东省召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
大学生年度个人总结
2015/02/15 职场文书
2019年二手房买卖合同范本
2019/10/14 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python
Android存储中最基本的文件存储方式
2022/04/30 Java/Android