[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中。

相关推荐
小短腿的代码世界44 分钟前
从.qrc到rcc编译器:Qt资源系统的隐秘运作机制与大型项目性能突围
开发语言·qt
MY_TEUCK1 小时前
【2026最新Python+AI学习基础】Python 入门笔记篇
笔记·python·学习
2401_833269301 小时前
Java网络编程入门
java·开发语言
青瓦梦滋1 小时前
C++的IO流与STL的空间配置器
开发语言·c++
赢乐1 小时前
大模型学习笔记:检索增强生成(RAG)架构
人工智能·python·深度学习·机器学习·智能体·幻觉·检索增强生成(rag)
五月君_2 小时前
Bun v1.3.14 发布,Rust 版即将进 Claude Code 内测,下一版可能就告别 Zig
开发语言·后端·rust
鱼很腾apoc3 小时前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程
浪里行舟3 小时前
你的品牌正在被AI“遗忘”?用BuildSOM找回搜索的下一个风口
人工智能·python·程序员
不吃土豆的马铃薯4 小时前
4.SGI STL 二级空间配置器 allocate 与_S_refill 源码解析
c语言·开发语言·c++·dreamweaver·内存池
码界筑梦坊4 小时前
120-基于Python的食品营养特征数据可视化分析系统
开发语言·python·信息可视化·数据分析·毕业设计·echarts·fastapi