[Python知识点]list列表append()和extend()的区别

在Python中,list.append()和list.extend()都是列表(list)的方法,用于添加元素,但它们的工作方式有所不同:

  1. list.append(x):这个方法将对象x添加到列表的末尾。x可以是任何数据类型,包括列表。如果x是一个列表,那么这个列表会被作为一个单个元素添加到原列表的末尾。

  2. list.extend(iterable):这个方法将可迭代对象(如列表、元组、字符串等)中的所有元素添加到原列表的末尾。这意味着,如果iterable是一个列表,那么这个列表中的每个元素都会被单独添加到原列表中,而不是作为一个整体。

简单来说,append()会将新元素作为单个元素添加,而extend()会将可迭代对象中的每个元素分别添加。下面是一个例子来说明这一点:

python 复制代码
# 示例
my_list = [1, 2, 3]

# 使用append添加一个列表
my_list.append([4, 5])
print(my_list)  # 输出: [1, 2, 3, [4, 5]]

# 使用extend添加一个列表
my_list.extend([6, 7])
print(my_list)  # 输出: [1, 2, 3, [4, 5], 6, 7]

在这个例子中,append()将[4, 5]作为一个元素添加到了my_list中,而extend()将[6, 7]中的每个元素分别添加到了my_list中。

相关推荐
全栈练习生4 分钟前
大模型反向传播与梯度下降
python·ai
小小张说故事1 小时前
Python logging 日志不输出?根源在 propagate 这条链上
后端·python
mmsx1 小时前
Android Dialog 插槽模式:用一套壳统一全应用的弹窗风格
android·java·dialog·开发语言
huanbailu1 小时前
Qt 跨线程信号槽:connect 返回 true 但槽函数不执行的坑
开发语言·c++·qt·信号槽·跨线程·元类型
ZealSinger1 小时前
Go slog生产落地LevelVar与共存
开发语言·后端·golang·go
喜欢打篮球的普通人1 小时前
MiniMind 学习笔记(十):优化器、学习率和数据设置——训练稳定性的三块基石
笔记·python·学习
醇氧1 小时前
uvicorn 详细介绍
linux·运维·python·python3.11
落魄实习生1 小时前
Agent Scope Java 2.x 系列【11】AgentState 与状态存储
java·开发语言·ai
HEJOO91 小时前
C++ 虚函数表(vtable)深度解析
开发语言·c++
老王爱玩车1 小时前
深入理解指针5
c语言·开发语言·学习