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取决于你想要达到的效果。

相关推荐
swany5 小时前
同步数据中,只需要几秒钟 & milvus向量数据库不可用 dify1.16.1 升级后踩坑记录
开发语言·python·numpy
小杍随笔5 小时前
2025年Rust GUI框架实战万字避坑指南
开发语言·后端·rust
geovindu5 小时前
CSharp: LogHelper
开发语言·后端·c#·.net
奈斯先生Vector5 小时前
大模型 Agentic Workflow 架构解构:异构 API 调度与 Token 路由的多模态系统设计
开发语言·前端·架构·prompt·aigc·音视频
冻柠檬飞冰走茶5 小时前
PTA基础编程题目集 7-20 打印九九口诀表(C语言实现)
c语言·开发语言·数据结构·算法
Jay-r5 小时前
手势粒子特效系统 Gesture Particle FX(附源码下载)
python·ai·编程·pygame·百度云·手势控制
额恩665 小时前
ResearchPilot 第三阶段总结报告
python·算法
红叶舞5 小时前
基于线段树的数据结构
数据结构·python·算法
创世宇图6 小时前
Video2Txt:160 行代码实现本地视频转文字
python·faster-whisper·video2txt·large-v3-turbo
Richard.Wong6 小时前
qt生成dll供C#调用
开发语言·qt