python的extend和append

在Python中,listappendextend方法都是用来向列表添加元素的,但它们之间有一些关键的区别:

  1. append方法

    • append方法用于将一个对象添加到列表的末尾。
    • 无论添加的对象是什么类型(整数、字符串、列表等),它都会被作为一个单独的元素添加到列表中。
    • 如果添加的对象是可迭代的(如另一个列表),那么这个对象会被作为一个整体添加到列表的末尾。

    示例

    python 复制代码
    my_list = [1, 2, 3]
    my_list.append(4)  # 添加一个元素
    print(my_list)  # 输出: [1, 2, 3, 4]
    
    my_list.append([5, 6])  # 添加一个列表作为单个元素
    print(my_list)  # 输出: [1, 2, 3, 4, [5, 6]]
  2. extend方法

    • extend方法用于将一个可迭代对象的所有元素添加到列表的末尾。
    • extend方法会将可迭代对象中的每个元素逐个添加到列表中,而不是作为一个整体。
    • 如果传入的参数不是可迭代对象,将会抛出TypeError

    示例

    python 复制代码
    my_list = [1, 2, 3]
    my_list.extend([4, 5])  # 添加一个列表中的所有元素
    print(my_list)  # 输出: [1, 2, 3, 4, 5]
    
    my_list.extend('ab')  # 将字符串中的每个字符作为元素添加
    print(my_list)  # 输出: [1, 2, 3, 4, 5, 'a', 'b']

总结

  • 使用append时,添加的对象作为单个元素整体添加到列表末尾。
  • 使用extend时,可迭代对象中的每个元素分别添加到列表末尾。

选择使用append还是extend取决于你想要达到的效果。

相关推荐
zone773914 小时前
001:简单 RAG 入门
后端·python·面试
F_Quant14 小时前
🚀 Python打包踩坑指南:彻底解决 Nuitka --onefile 配置文件丢失与重启报错问题
python·操作系统
允许部分打工人先富起来15 小时前
在node项目中执行python脚本
前端·python·node.js
IVEN_15 小时前
Python OpenCV: RGB三色识别的最佳工程实践
python·opencv
haosend16 小时前
AI时代,传统网络运维人员的转型指南
python·数据网络·网络自动化
曲幽16 小时前
不止于JWT:用FastAPI的Depends实现细粒度权限控制
python·fastapi·web·jwt·rbac·permission·depends·abac
IVEN_1 天前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang1 天前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮1 天前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python
千寻girling1 天前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python