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

相关推荐
清水白石0081 天前
《从零到进阶:Pydantic v1 与 v2 的核心差异与零成本校验实现原理》
数据库·python
leo__5201 天前
基于菲涅耳衍射积分的空心高斯光束传输数值模拟(MATLAB实现)
开发语言·matlab
昵称已被吞噬~‘(*@﹏@*)’~1 天前
【RL+空战】学习记录03:基于JSBSim构造简易空空导弹模型,并结合python接口调用测试
开发语言·人工智能·python·学习·深度强化学习·jsbsim·空战
短剑重铸之日1 天前
《SpringBoot4.0初识》第一篇:前瞻与思想
java·开发语言·后端·spring·springboot4.0
2501_941877981 天前
从配置热更新到运行时自适应的互联网工程语法演进与多语言实践随笔分享
开发语言·前端·python
lsx2024061 天前
Python 运算符详解
开发语言
酩酊仙人1 天前
fastmcp构建mcp server和client
python·ai·mcp
程序炼丹师1 天前
CMakeLists中 get_filename_component详解
开发语言
꧁Q༒ོγ꧂1 天前
C++ 入门完全指南(四)--函数与模块化编程
开发语言·c++
且去填词1 天前
DeepSeek API 深度解析:从流式输出、Function Calling 到构建拥有“手脚”的 AI 应用
人工智能·python·语言模型·llm·agent·deepseek