说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python 的内置可变序列都支持 append() 方法,将一个元素添加到序列的末尾。使用此方法的对象必须是一个可变序列, 支持列表(list)和字节数组(bytearray)。它是一个原地(inplace)操作。
以下是一些使用方法:
# 列表
lst = [1,2,3]
lst.append(4)
lst
# [1, 2, 3, 4]
lst.append('A')
lst
# [1, 2, 3, 4, 'A']
# 字节数组
ba = bytearray(b'abc')
ba
# bytearray(b'abc')
ba.append(65)
ba.append(65)
ba
# bytearray(b'abcA')
ba.append('a')
# TypeError: 'str' object cannot be interpreted as an integer
要注意辨析以下操作:
# 列表
lst = [1,2,3]
lst.append([4, 5])
lst
# [1, 2, 3, [4, 5]]
lst.append(True)
lst
# [1, 2, 3, [4, 5], True]
lst2 = [1,2,3]
lst2 = lst2.append(4)
lst2 # None
# 字节数组
ba = bytearray(b'abc')
ba.append(True)
ba
# bytearray(b'abc\x01')
append() 方法向列表的尾部添加一个新的元素,它的语法为:
s.append(x) # 通用语法
list.append(object) # 列表
bytearray.append(self, item, /) # 字节数组
等同于 s[len(s):len(s)] = [x])
。列表将对象附加到列表的末尾, 元素可为任意类型的对象。字节数组将单个项附加到末尾,加入的元素必须是一个可解释为整型的内容。
append() 是一个原地操作(inplace,见 原地操作), 执行时会直接修改对象返回的是一个 None。
字符串、元组、字节串等不可变序列以及 迭代器 等不支持 append 操作, 如果要追加内容则需要重新制定一个新的对象。
字典增加内容可以使用 dict.update()、| 等操作。
append() 是一个原地操作(inplace),后将原对象进行修改,返回的是 None 值,因此我们不能再给 append() 操作赋值,因为赋值的标识符号的对象为 None,如果再赋值给原对象,原对象的标识符就是 None 了。
见下例。
a = [1,2]
b = a.append(3)
print(a)
# [1, 2, 3]
print(b)
# None
a = a.append(4)
print(a)
# None
append() 将追加一个元素,即使它是一个元组或者列表这样的序列也会被认为是一个元素,如果要追加多个元素可以使用 extend() 方法。
append() 将元素插入到末尾,如果想将元素插入到指定的位置请使用 insert() 方法。
更新时间:2022-06-23 20:48:29 标签:python append 追加 序列