![Python入门很简单](https://wfqqreader-1252317822.image.myqcloud.com/cover/196/31476196/b_31476196.jpg)
6-4 增加与删除列表元素
6-4-1 在列表末端增加元素append()
程序设计时常常会发生需要增加列表元素的情况,如果目前元素个数是三个,如果想要增加第4个元素,读者可能会想可否使用下列传统方式,直接设置新增的值。
name_list[3]=value
实例1:使用索引方式,为列表增加元素,但是会发生索引值超过列表长度的错误。
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1247.jpg?sign=1738942613-WtwIvwO93MUWveEKVoW6aGbzjtMnBSMj-0-4295561626ec757e77dbc0ec59324e1a)
读者可能会想可以增加一个新列表,将欲新增的元素放在新列表,然后再将原先列表与新列表相加,就达到增加列表元素的目的了。这个方法理论是可以,可是太麻烦了。Python为列表内建了新增元素的方法append(),使用这个方法可以在列表末端直接增加元素。
name_list.append('新增元素')
程序实例ch6_20.py:先建立一个空列表,然后分别使用append()增加三个元素内容。
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1248.jpg?sign=1738942613-DhkYOcSBTlFxfSyYB5jfWiI185KP975y-0-139fdab22da9ff769340849457d7e452)
执行结果
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1249.jpg?sign=1738942613-RrrMOihqjmzeRpUIdCznB4ViBU5gwzbU-0-7c00d6eb2c2504bee74710532fc0355c)
6-4-2 插入列表元素insert()
append()方法是固定在列表末端插入元素,insert()方法则是可以在任意位置插入元素,它的使用格式如下。
insert(索引,元素内容) #索引是插入位置,元素内容是插入内容
程序实例ch6_21.py:使用insert()插入列表元素的应用。
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1250.jpg?sign=1738942613-xkYZ2aLqwuJwLW1cYUvTTcpBeORP7jdU-0-c10f7d5b3c176ee5047240d53f0b0ac7)
执行结果
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1251.jpg?sign=1738942613-if9sXv82koO1NZb1Z9e91alT7GyQgPJc-0-ce17f2ae9735ee849545e3dea8bf9f97)
6-4-3 删除列表元素pop()
6-1-8节有介绍过使用del删除列表元素,同时指出其最大的缺点是,删除后就无法取得相关信息。使用pop()方法删除元素最大的优点是,删除后将弹出所删除的值,使用pop()时若是未指明所删除元素的位置,一律删除列表末端的元素。pop()的使用方式如下。
value=name_list.pop() #没有索引是删除列表末端元素 value=name_list.pop(i) #删除指定索引值的列表元素
程序实例ch6_22.py:使用pop()删除列表元素的应用,这个程序第5行未指明删除的索引值,所以删除了列表的最后一个元素。程序第9行则是指明删除索引值为1的元素。
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1252.jpg?sign=1738942613-K8jDM7zLzlS8hZSLf7R6fG3WJZxUYmfI-0-a40d90694e4c3397bb1ffd2678f97491)
执行结果
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1253.jpg?sign=1738942613-VCHVs321Jz5kYllkpXvD3WmqTE3AmIeQ-0-49fece89b6aa232cac8d8192ae52fd1e)
6-4-4 删除指定的元素remove()
在删除列表元素时,有时可能不知道元素在列表内的位置,此时可以使用remove()方法删除指定的元素,它的使用方式如下。
name_list.remove(想删除的元素内容)
如果列表内有相同的元素,则只删除第一个出现的元素,如果想要删除所有相同的元素,必须使用循环,第7章将会讲解循环的概念。
程序实例ch6_23.py:删除列表中第一次出现的元素bmw,这个列表中有两笔bmw字符串,最后只删除索引为1的bmw字符串。
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1254.jpg?sign=1738942613-HvYMhdefahIQDpkCDqJ5UBoV9Rq3MUux-0-2be8b91ac3cfd95748381613388c02ea)
执行结果
![](https://epubservercos.yuewen.com/FA4957/17035792704284606/epubprivate/OEBPS/Images/figer1255.jpg?sign=1738942613-AtLw285gB22k5PToLn3jIPFDqxGpQgG9-0-2a4584b21d6108520513f06e6d44508a)