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 相关文章推荐
python目录操作之python遍历文件夹后将结果存储为xml
Jan 27 Python
python调用Matplotlib绘制分布点并且添加标签
May 31 Python
Python基于property实现类的特性操作示例
Jun 15 Python
深入浅析Python的类
Jun 22 Python
Linux下远程连接Jupyter+pyspark部署教程
Jun 21 Python
Python Django 实现简单注册功能过程详解
Jul 29 Python
python使用for...else跳出双层嵌套循环的方法实例
May 17 Python
基于Python快速处理PDF表格数据
Jun 03 Python
Python监听剪切板实现方法代码实例
Nov 11 Python
python 批量下载bilibili视频的gui程序
Nov 20 Python
django中ImageField的使用详解
Dec 21 Python
python如何利用traceback获取详细的异常信息
Jun 05 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
php下使用以下代码连接并测试
2008/04/09 PHP
php过滤危险html代码
2008/08/18 PHP
优化PHP程序的方法小结
2012/02/23 PHP
PHP实现清除wordpress里恶意代码
2015/10/21 PHP
PHP异常处理Exception类
2015/12/11 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
WHOOPS PHP调试库的使用
2017/09/29 PHP
php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
2019/05/09 PHP
laravel 框架实现无限级分类的方法示例
2019/10/31 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
extjs中grid中嵌入动态combobox的应用
2011/01/01 Javascript
页面调用单个swf文件,嵌套出多个方法。
2011/11/21 Javascript
js图片延迟加载的实现方法及思路
2013/07/22 Javascript
调用jQuery滑出效果时闪烁的解决方法
2014/03/27 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
javascript学习笔记(七)Ajax和Http状态码
2014/10/08 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
浅谈js中同名函数和同名变量的执行问题
2017/02/12 Javascript
AngularJS中scope的绑定策略实例分析
2017/10/30 Javascript
使用vue-cli(vue脚手架)快速搭建项目的方法
2018/05/21 Javascript
JavaScript键盘事件响应顺序详解
2019/09/30 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
2020/05/10 Javascript
跟老齐学Python之for循环语句
2014/10/02 Python
python中字典(Dictionary)用法实例详解
2015/05/30 Python
Python素数检测实例分析
2015/06/15 Python
在Python的Django框架的视图中使用Session的方法
2015/07/23 Python
Python使用try except处理程序异常的三种常用方法分析
2018/09/05 Python
Python 操作 ElasticSearch的完整代码
2019/08/04 Python
python GUI库图形界面开发之PyQt5中QMainWindow, QWidget以及QDialog的区别和选择
2020/02/26 Python
PyCharm2020.1.1与Python3.7.7的安装教程图文详解
2020/08/07 Python
英国儿童鞋和靴子:Start-Rite
2019/05/06 全球购物
田径运动会通讯稿
2015/07/18 职场文书
Python 快速验证代理IP是否有效的方法实现
2021/07/15 Python
关于Vue中的options选项
2022/03/22 Vue.js