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 相关文章推荐
以Flask为例讲解Python的框架的使用方法
Apr 29 Python
在Python中操作字符串之rstrip()方法的使用
May 19 Python
Python中方法链的使用方法
Feb 23 Python
python3 与python2 异常处理的区别与联系
Jun 19 Python
python读取excel表格生成erlang数据
Aug 26 Python
django 微信网页授权认证api的步骤详解
Jul 30 Python
Python使用字典实现的简单记事本功能示例
Aug 15 Python
Python unittest 自动识别并执行测试用例方式
Mar 09 Python
vscode写python时的代码错误提醒和自动格式化的方法
May 07 Python
Django bulk_create()、update()与数据库事务的效率对比分析
May 15 Python
python 深度学习中的4种激活函数
Sep 18 Python
python 模块导入问题汇总
Feb 01 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
PHP 日期时间函数的高级应用技巧
2009/10/10 PHP
PHP文件读写操作之文件写入代码
2011/01/13 PHP
PHP中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
2011/03/23 PHP
jQuery+php简单实现全选删除的方法
2016/11/28 PHP
PHP文件操作详解
2016/12/30 PHP
来自国外的30个基于jquery的Web下拉菜单
2012/06/22 Javascript
Jquery获得控件值的三种方法总结
2014/02/13 Javascript
常用jQuery选择器总结
2014/07/11 Javascript
JavaScript实现检查页面上的广告是否被AdBlock屏蔽了的方法
2014/11/03 Javascript
iframe里使用JavaScript控制主页转向的方法
2015/04/03 Javascript
AngularJS基础 ng-focus 指令简单示例
2016/08/01 Javascript
在网页中插入百度地图的步骤详解
2016/12/02 Javascript
jQuery Ajax使用FormData上传文件和其他数据后端web.py获取
2017/06/11 jQuery
react+redux的升级版todoList的实现
2017/12/18 Javascript
浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑
2020/09/12 Javascript
CentOS 6.5下安装Python 3.5.2(与Python2并存)
2017/06/05 Python
TensorFlow模型保存和提取的方法
2018/03/08 Python
使用Python进行目录的对比方法
2018/11/01 Python
详解Pandas之容易让人混淆的行选择和列选择
2019/07/10 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
Python计算指定日期是今年的第几天(三种方法)
2020/03/26 Python
Python读取配置文件(config.ini)以及写入配置文件
2020/04/08 Python
Python退出时强制运行一段代码的实现方法
2020/04/29 Python
台湾百利市购物中心:e-Payless
2017/08/16 全球购物
日本航空官方网站:JAL
2019/06/19 全球购物
诺思信科技(南京)有限公司.NET笔试题答案
2013/07/06 面试题
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
大型活动策划方案
2014/01/12 职场文书
学习保证书范文
2014/04/30 职场文书
领导干部作风整顿个人剖析材料
2014/10/11 职场文书
房屋产权共有协议书范本
2014/11/03 职场文书
2014年学校财务工作总结
2014/12/06 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
教你用Java在个人电脑上实现微信扫码支付
2021/06/13 Java/Android
golang操作redis的客户端包有多个比如redigo、go-redis
2022/04/14 Golang
Hive常用日期格式转换语法
2022/06/25 数据库