关键词

给Python list列表添加元素

上一节我们对Python列表已经有了基本的了解,但在实际开发中,还需要对list进行添加、修改、删除、查询等操作。本文先带你来学习如何向列表中添加元素。

Python给list列表添加元素的函数有:append()、extend()、insert()。其中append()和extend()在list列表末尾追加元素,insert()在list列表任意位置插入元素。以下是三者的具体区别:

append()添加函数

append()函数会将元素添加到list的末尾,使用方式如下:

listname.append(data)

listname 表示要添加元素的列表,data 表示到添加到list末尾的数据,它可以是单个元素,也可以是列表、元组等。

举例如下:

tech = ['Python','Web','Spider']
#追加元素
tech.append('Big Data')
print(tech)

#追加元组,整个元组被当成一个元素
tech.append(('AI','ML','DL'))
print(tech)

#追加列表,整个列表也被当成一个元素
techappend(['RL','RPA'])
print(tech)

运行结果为:

['Python', 'Web', 'Spider', 'Big Data']
['Python', 'Web', 'Spider', 'Big Data', ('AI', 'ML', 'DL')]
['Python', 'Web', 'Spider', 'Big Data', ('AI', 'ML', 'DL'), ['RL', 'RPA']]

需要注意的是,当给 append() 函数传递list或者元组时,append() 函数会将它们视为一个整体元素添加到列表中。

那么如何给list列表末尾追加单个元素呢?这就需要用到 extend() 函数。

extend()追加函数

extend()函数是把元素追加到list列表的末尾。它不会把list或元组当成整体追加进去,而是把它们内部的元素一一添加到列表中。

extend() 函数的使用方式如下:

listname.extend(data)

listname 表示要添加元素的列表,data 表示到添加到list末尾的数据,它可以是单个元素,也可以是列表、元组等。

其中,listname 指的是要要添加元素的list列表;data 表示要添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等,但不能是单个的数字。

请看以下实例:

tech= ['Python','Web','Spider']

#追加元素
tech.extend('Big Data')
print(tech)

#追加元组,元祖被拆分成多个元素
t = ('AI','ML','DL')
tech.extend(t)
print(tech)

#追加列表,列表也被拆分成多个元素
tech.extend(['RL','RPA'])
print(tech)

运行结果:

['Python', 'Web', 'Spider', 'B', 'i', 'g', ' ', 'D', 'a', 't', 'a']
['Python', 'Web', 'Spider', 'B', 'i', 'g', ' ', 'D', 'a', 't', 'a', 'AI', 'ML', 'DL']
['Python', 'Web', 'Spider', 'B', 'i', 'g', ' ', 'D', 'a', 't', 'a', 'AI', 'ML', 'DL', 'RL', 'RPA']

这里会看到,在追加字符串元素'Big Data'时,extend函数会将其当成两个元素追加进去。这是因为extend函数识别的是序列,在《Python 序列详解》一文我们已知字符串也是序列的一种,它的每个字符都是单个元素,所以extend会进行逐一追加。

insert()函数插入元素

append() 和 extend() 函数只能在列表末尾插入元素,如果希望在列表中间某个位置插入元素,那么可以使用 insert() 方法。

insert() 的语法格式如下:

listname.insert(index , obj)
其中,index 表示指定位置的索引值。insert() 会将 obj 插入到 listname 列表第 index 个元素的位置。

当插入列表或者元祖时,insert() 也会将它们视为一个整体,作为一个元素插入到列表中,这一点和 append() 是一样的。

append() 和 extend() 函数只能在列表的末尾插入元素而 insert() 函数可以在列表的任意位置插入元素。

insert() 的使用格式如下:

listname.insert(index , data)

index 表示要插入位置的索引值。也就是说,insert() 会将 data 插入到 listname 列表第 index 个元素的位置。

它的插入规则与 append() 函数一致,当插入列表或元组时,insert() 会将它们视为一个整体插入其中。

实例代码如下:

tech = ['Python','Web','Spider']
#插入元素
tech.insert(2, 'Big Data')
print(tech)

#插入元组,整个元祖被当成一个元素
t = ('AI','ML','DL')
tech.insert(2, t)
print(tech)

#插入列表,整个列表被当成一个元素
tech.insert(3, ['RL','RPA'])
print(tech)

#插入字符串,整个字符串被当成一个元素
tech.insert(0, "http://pythonjishu.com")
print(tech)

输出结果为:

['Python', 'Web', 'Big Data', 'Spider']
['Python', 'Web', ('AI', 'ML', 'DL'), 'Big Data', 'Spider']
['Python', 'Web', ('AI', 'ML', 'DL'), ['RL', 'RPA'], 'Big Data', 'Spider']
['http://pythonjishu.com', 'Python', 'Web', ('AI', 'ML', 'DL'), ['RL', 'RPA'], 'Big Data', 'Spider']

本文链接:http://task.lmcjl.com/news/3715.html

展开阅读全文