Python list列表添加元素的3种方法

实际开发中,经常需要对列表进行更新,包括向列表中添加元素、修改表中元素以及删除元素。本节先来学习如何向列表中添加元素。

通过前面的学习我们知道,通过使用“+”运算符可以将多个序列进行连接,列表也不例外,例如:
name = ["C语言中文网"]
address = ["http://c.biancheng.net"]
print(name+address)
运行结果为:

['C语言中文网', 'http://c.biancheng.net']

可以看到,使用“+”运算符,确实可以像列表中添加元素。但是这种方式的执行效率并不高,更建议大家使用列表提供的 append() 方法。

Python append()方法添加元素

append() 方法用于在列表的末尾追加元素,该方法的语法格式如下:

listname.append(obj)

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

例如:
a_list = ['crazyit', 20, -2]
# 追加元素
a_list.append('fkit')
print(a_list)
a_tuple = (3.4, 5.6)
# 追加元组,元组被当成一个元素
a_list.append(a_tuple)
print(a_list)
# 追加列表,列表被当成一个元素
a_list.append(['a', 'b'])
print(a_list)
运行结果为:

['crazyit', 20, -2, 'fkit']
['crazyit', 20, -2, 'fkit', (3.4, 5.6)]
['crazyit', 20, -2, 'fkit', (3.4, 5.6), ['a', 'b']]

可以看到,即便给 append() 方法传递列表或者元组,此方法也只会将其视为一个元素,直接添加到列表中,从而形成包含列表和元组的新列表。

Python extend()方法添加元素

当然,如果希望不将被追加的列表或元组当成一个整体,而是只追加列表中的元素,则可使用列表提供的 extend() 方法。

extend()方法的语法格式如下:

listname.extend(obj)

例如:
b_list = ['a', 30]
# 追加元组中的所有元素
b_list.extend((-2, 3.1))
print(b_list)
# 追加列表中的所有元素
b_list.extend(['C', 'R', 'A'])
print(b_list)
# 追加区间中的所有元素
b_list.extend(range(97, 100))
print(b_list)
运行结果为:

['a', 30, -2, 3.1]
['a', 30, -2, 3.1, 'C', 'R', 'A']
['a', 30, -2, 3.1, 'C', 'R', 'A', 97, 98, 99]

Python insert()方法插入元素

如果希望在列表中间增加元素,则可使用列表的 insert() 方法,此方法的语法格式为:

listname.insert(index , obj)

其中,index 参数指的是将元素插入到列表中指定位置处的索引值。

使用 insert() 方法向列表中插入元素,和 append() 方法一样,无论插入的对象是列表还是元组,都只会将其整体视为一个元素。

例如:
c_list = list(range(1, 6))
print(c_list)
# 在索引3处插入字符串
c_list.insert(3, 'CRAZY' )
print(c_list)
# 在索引3处插入列表
c_list.insert(3, ["crazy"])
print(c_list)
输出结果为:

[1, 2, 3, 4, 5]
[1, 2, 3, 'CRAZY', 4, 5]
[1, 2, 3, ['crazy'], 'CRAZY', 4, 5]

注意,insert() 主要用来插入元素,当向列表末尾添加元素时,还是应该使用 append() 方法。