欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python列表append、extend、+、+=详解

程序员文章站 2024-01-06 13:37:16
...

Python列表append、extend、+、+=详解



append方法

原型:

append(self, object: Any) -> None

原型解析: 从原型可以看出, append方法接收一个任意类型的对象作为参数
行为(功能): 将object直接添加到列表实例对象

示例:

# >>> 表示交互输入
# <<< 表示交互输出
>>> lis = list()  # 创建空列表, 也可以通过[]创建
>>> lis
<<< []

>>> lis.append(1)  # 将整数型对象添加到列表
>>> lis
<<< [1]

>>> lis.append([2, 3, 4])  # 将列表对象添加到列表
>>> lis
<<< [1, [2, 3, 4]]

extend方法

原型:

extend(self, iterable: Iterable) -> None

原型解析: 从原型可以看出, extend方法接收一个可迭代对象作为参数
行为(功能): 将可迭代对象的每一个元素添加到列表实例对象

示例:

# >>> 表示交互输入
# <<< 表示交互输出
>>> lis = list()  # 创建空列表, 也可以通过[]创建
>>> list
<<< []

>>> lis.extend([1, 2, 3])
<<< [1, 2, 3]

>>> lis.extend(range(3))
<<< [1, 2, 3, 0, 1, 2]

+运算符

原型:

__add__(self, value: List) -> List  # Python的语法糖, 魔法方法, 可以理解为c++的运算符重载

原型解析: 从原型可以看出, +运算符接收一个列表实例对象, 并返回一个新的列表实例对象
行为(功能): 行为类似extend方法

与extend的区别:
行为区别: extend改变自身, +运算符不改变自身, 而是返回一个副本(新的实例)
参数区别: extend接收任意可迭代对象作为参数, +运算符仅可接收列表作为参数

示例:

# >>> 表示交互输入
# <<< 表示交互输出
>>> lis = list()  # 创建空列表, 也可以通过[]创建
>>> list
<<< []

>>> lis + [1, 2, 3]
<<< [1, 2, 3]  # 返回的副本
>>> lis  # 查看自身
<<< []

+=运算符

原型:

__iadd__(self, value: Iterable) -> None  # Python的语法糖, 魔法方法, 可以理解为c++的运算符重载

原型解析: 从原型可以看出, += 就是 extend方法的简写形式
行为(功能):extend完全相同



qq交流群: 921673324 [Python学习与项目交流等]
公众号: 序日新说 [分享Python教程与项目实战等]
Python列表append、extend、+、+=详解

上一篇:

下一篇: