Python 列表中的修改、添加和删除元素的实现


Posted in Python onJune 11, 2020

本文介绍的是列表中的修改、添加和删除元素。第一次写博客,如果本文有什么错误,还请大家评论指正。谢谢!
创建的列表大多数都将是动态的,这就意味着列表创建后,将随着程序的运行删减元素。

修改列表元素

修改元素的的语法与访问列表的语法类似。
假设有一个列表motorcycles,其中第一个元素为'honda',修改第一个元素的值

motorcycles = ['honda','yamaha','suzuki']
print(motorcycles)
motorcycles[0] = 'ducati' 
print(motorcycles)

['honda', 'yamaha', 'suzuki']
['ducati', 'yamaha', 'suzuki']

列表中第一个元素的值变成了'ducati'

添加列表元素

在列表末尾添加元素

motorcycles = ['honda','yamaha','suzuki']
motorcycles.append('ducati')
print(motorcycles)

['honda', 'yamaha', 'suzuki', 'ducati']

方法append()是将元素'ducati'添加到了列表的末尾,那如果我们想将元素插入到列表元素的中间怎么办?方法insert()解决这个问题。

motorcycles = ['honda','yamaha','suzuki']
motorcycles.insert(1,'ducati')
print(motorcycles)

['honda', 'ducati', 'yamaha', 'suzuki']

元素'ducati'插入在了列表中第二个位置上,这是因为在python程序中,是从0开始计数的,所以'ducati'放在了元素'honda'的后面。

删除列表元素

使用del 语句删除元素

motorcycles = ['honda','yamaha','suzuki']
del motorcycles[1]
print(motorcycles)

['honda', 'suzuki']

删除第二个元素,同理在python程序中,是从0开始计数的,即删除的是'yamaha'

使用 pop()删除元素

pop() 可删除列表中末尾的元素,并让你能够接着使用它。术语弹出(pop)源自这样的类比:列表就像是一个栈,而删除的列表末尾相当于弹出栈顶元素。

motorcycles = ['honda','yamaha','suzuki']
last_owned = motorcycles.pop()
print(last_owned)
print(motorcycles)

suzuki
['honda', 'yamaha']

实际上,我们也可以使用pop()删除任何位置的元素,只需要在括号中指定要删除的元素索引即可。

motorcycles = ['honda','yamaha','suzuki']
last_owned = motorcycles.pop(0)
print(last_owned)

honda

使用remove 语句删除元素

有的时候,我们不知道从列表中删除的位置。如果你只知道要删除元素的值,则可以使用remove()。
例如:我们要从motorcycles列表中删除'ducati'

motorcycles = ['honda','yamaha','suzuki','ducati']
motorcycles.remove('ducati')
print(motorcycles)

['honda', 'yamaha', 'suzuki']

注意:remove()只能删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环判断是否删除了所有这样的值。

练习

# 1.嘉宾名单
# 邀请一些人共进晚餐,人数至少3个,然后使用这个列表打印消息,邀请这些人来与你共进晚餐
guest = ['yege','xiaowang','zhangsan','wangbaoqiang']
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)

Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Zhangsan 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!

# 2.修改嘉宾名单
# 你刚得知有嘉宾无法赴约,因此需要另外邀请一名嘉宾
# 在嘉宾名单的基础上,在程序末尾添加一条print语句,指出哪位嘉宾无法赴约
# 修改嘉宾名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾姓名
# 再次打印一系列消息,向名单中的每位嘉宾发出邀请
guest = ['yege','xiaowang','zhangsan','wangbaoqiang']
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print("#" * 60)
print(guest[2].title() + " 因为有急事,所以不能前来赴约,表示抱歉" + "!" )
del guest[2]
guest.insert(2,'lisi')
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print(guest)

Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Zhangsan 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
############################################################
Zhangsan 因为有急事,所以不能前来赴约,表示抱歉!
Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Lisi 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
['yege', 'xiaowang', 'lisi', 'wangbaoqiang']

# 3.添加嘉宾
# 找到了一个更大的餐桌,可容纳更多的嘉宾,请继续邀请3位嘉宾
# 在前面基础上,在程序末尾添加一条print语句,指出你找到了更大的餐桌
# 使用insert()将一位新嘉宾添加到名单中
# 使用insert()将另一位新嘉宾添加到名单中间
# 使用append()将最后一位新嘉宾添加到名单末尾
# 打印一系列消息,向名单中的每位嘉宾发出邀请
guest = ['yege','xiaowang','zhangsan','wangbaoqiang']
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print("#" * 60)
print(guest[2].title() + " 因为有急事,所以不能前来赴约,表示抱歉" + "!" )
del guest[2]
guest.insert(2,'lisi')
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print("#" * 60)
print("告诉大家一个好消息,我找到了一个更大的餐桌!")
guest.insert(0,'laogui')
guest.insert(3,'wangdana')
guest.append('xiaoming')
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[3].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[4].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[5].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[6].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)

Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Zhangsan 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
############################################################
Zhangsan 因为有急事,所以不能前来赴约,表示抱歉!
Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Lisi 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
############################################################
告诉大家一个好消息,我找到了一个更大的餐桌!
Laogui 您好,欢迎来我家做客,一起共进晚餐!
Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Wangdana 您好,欢迎来我家做客,一起共进晚餐!
Lisi 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
Xiaoming 您好,欢迎来我家做客,一起共进晚餐!

# 4.缩减名单
# 得知新购买的餐桌无法及时送达,因此只能邀请两位嘉宾
# 在前面基础上,在程序末尾添加一行代码,打印只能邀请两位嘉宾共进晚餐
# 使用pop()不断地删除名单中的嘉宾,直到有两名嘉宾为止,每次从名单中弹出一位嘉宾时,都打印一条消息,让该嘉宾知悉你很抱歉,无法邀请他来共进晚餐
# 对余下的两位嘉宾中的每一位,都打印一条消息,指出他依然在受邀人之列
# 使用del将最后两位嘉宾从名单中删除,让名单变为空的,打印该名单,核实程序结束时名单确实是空的
guest = ['yege','xiaowang','zhangsan','wangbaoqiang']
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print("#" * 60)
print(guest[2].title() + " 因为有急事,所以不能前来赴约,表示抱歉" + "!" )
del guest[2]
guest.insert(2,'lisi')
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[-1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print("#" * 60)
print("告诉大家一个好消息,我找到了一个更大的餐桌!")
guest.insert(0,'laogui')
guest.insert(3,'wangdana')
guest.append('xiaoming')
msg = guest[0].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[1].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[2].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[3].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[4].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[5].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
msg = guest[6].title() + " 您好,欢迎来我家做客,一起共进晚餐" + "!"
print(msg)
print("#" * 60)
print(guest)
print("很抱歉,刚得到消息,新的餐桌无法及时送达,只能邀请两位好友来一起共进晚餐了!")
pop_guest = guest.pop(0)
print(pop_guest.title() + "兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐" + "!")
pop_guest = guest.pop(0)
print(pop_guest.title() + "兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐" + "!")
pop_guest = guest.pop(0)
print(pop_guest.title() + "兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐" + "!")
pop_guest = guest.pop(0)
print(pop_guest.title() + "兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐" + "!")
pop_guest = guest.pop(0)
print(pop_guest.title() + "兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐" + "!")
print(guest[0].title() + "兄,你还在受邀之列中,记得一起共进晚餐哦,等你!")
print(guest[1].title() + "兄,你还在受邀之列中,记得一起共进晚餐哦,等你!")
del guest[0]
del guest[0]
print(guest)

Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Zhangsan 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
############################################################
Zhangsan 因为有急事,所以不能前来赴约,表示抱歉!
Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Lisi 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
############################################################
告诉大家一个好消息,我找到了一个更大的餐桌!
Laogui 您好,欢迎来我家做客,一起共进晚餐!
Yege 您好,欢迎来我家做客,一起共进晚餐!
Xiaowang 您好,欢迎来我家做客,一起共进晚餐!
Wangdana 您好,欢迎来我家做客,一起共进晚餐!
Lisi 您好,欢迎来我家做客,一起共进晚餐!
Wangbaoqiang 您好,欢迎来我家做客,一起共进晚餐!
Xiaoming 您好,欢迎来我家做客,一起共进晚餐!
############################################################
['laogui', 'yege', 'xiaowang', 'wangdana', 'lisi', 'wangbaoqiang', 'xiaoming']
很抱歉,刚得到消息,新的餐桌无法及时送达,只能邀请两位好友来一起共进晚餐了!
Laogui兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐!
Yege兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐!
Xiaowang兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐!
Wangdana兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐!
Lisi兄,很抱歉,怪我考虑的不周到,下次我们有机会再一起共进晚餐!
Wangbaoqiang兄,你还在受邀之列中,记得一起共进晚餐哦,等你!
Xiaoming兄,你还在受邀之列中,记得一起共进晚餐哦,等你!
[]

到此这篇关于Python 列表中的修改、添加和删除元素的实现的文章就介绍到这了,更多相关Python 修改添加删除元素内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现的最近最少使用算法
Jul 10 Python
Python控制多进程与多线程并发数总结
Oct 26 Python
Python双精度浮点数运算并分行显示操作示例
Jul 21 Python
wxpython实现图书管理系统
Mar 12 Python
利用python将pdf输出为txt的实例讲解
Apr 23 Python
Python实现注册、登录小程序功能
Sep 21 Python
Django保护敏感信息的方法示例
May 09 Python
程序员的七夕用30行代码让Python化身表白神器
Aug 07 Python
一文了解python 3 字符串格式化 F-string 用法
Mar 04 Python
Python Django2 model 查询介绍(条件、范围、模糊查询)
Mar 16 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
python疲劳驾驶困倦低头检测功能的实现
Apr 04 Python
python中什么是面向对象
Jun 11 #Python
python实现凯撒密码、凯撒加解密算法
Jun 11 #Python
python新手学习可变和不可变对象
Jun 11 #Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
Jun 11 #Python
什么是python的id函数
Jun 11 #Python
Keras:Unet网络实现多类语义分割方式
Jun 11 #Python
Pycharm中配置远程Docker运行环境的教程图解
Jun 11 #Python
You might like
MySQL GBK→UTF-8编码转换
2007/05/24 PHP
PHP使用CURL_MULTI实现多线程采集的例子
2014/07/29 PHP
ThinkPHP自动完成中使用函数与回调方法实例
2014/11/29 PHP
PHP函数引用返回的实例详解
2016/09/11 PHP
laravel中的fillable和guarded属性详解
2019/10/23 PHP
thinkphp5框架路由原理与用法详解
2020/02/11 PHP
jquery 必填项判断表单是否为空的方法
2008/09/14 Javascript
JS实现定时页面弹出类似QQ新闻的提示框
2013/11/07 Javascript
jQuery中height()方法用法实例
2014/12/24 Javascript
jQuery在线选座位插件seat-charts特效代码分享
2015/08/27 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
jQuery图片渐变特效的简单实现
2016/06/25 Javascript
轻松掌握JavaScript中介者模式
2016/08/26 Javascript
JavaScript正则表达式实例详解
2016/10/16 Javascript
AngularJS 与百度地图的结合实例
2016/10/20 Javascript
微信小程序 天气预报开发实例代码源码
2017/01/20 Javascript
基于MVC方式实现三级联动(JavaScript)
2017/01/23 Javascript
通过 JS 判断页面是否有滚动条的实现方法
2018/04/05 Javascript
NodeJs 文件系统操作模块fs使用方法详解
2018/11/26 NodeJs
Jquery实现获取子元素的方法分析
2019/08/24 jQuery
微信小程序开发之转发分享功能
2019/10/22 Javascript
Python文件处理
2016/02/29 Python
Python实现PS滤镜Fish lens图像扭曲效果示例
2018/01/29 Python
Python操作MySQL模拟银行转账
2018/03/12 Python
解决python matplotlib imshow无法显示的问题
2018/05/24 Python
浅谈Pycharm调用同级目录下的py脚本bug
2018/12/03 Python
python global和nonlocal用法解析
2020/02/03 Python
Python多分支if语句的使用
2020/09/03 Python
python和node.js生成当前时间戳的示例
2020/09/29 Python
小程序瀑布流解决左右两边高度差距过大的问题
2019/02/20 HTML / CSS
Interhome丹麦:在线预订度假屋和公寓
2019/07/18 全球购物
2014年机关植树节活动方案
2014/02/27 职场文书
学雷锋演讲稿汇总
2014/05/10 职场文书
2016入党积极分子考察评语
2015/12/01 职场文书
美国运营商 T-Mobile 以 117.83Mb/s 的速度排第一位
2022/04/21 数码科技
永中文档在线转换预览基于nginx配置部署方案
2022/06/10 Servers