Python列表append、extend、+、+=详解
程序员文章站
2024-01-06 13:37:16
...
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教程与项目实战等]
推荐阅读