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

相关推荐
断眉的派大星7 分钟前
工厂模式(Factory Pattern)完整详解
python·设计模式
好家伙VCC8 分钟前
**基于RISC-V架构的嵌入式系统开发:从零开始构建高效低功耗应用**在当前物联网(IoT)和边缘计
java·python·物联网·架构·risc-v
沐知全栈开发22 分钟前
CSS Text(文本)
开发语言
前进吧-程序员27 分钟前
现代 C++ 异步编程:从零实现一个高性能 ThreadPool (C++20 深度实践)
开发语言·c++·c++20
大佬王31 分钟前
WebSocket 连接池生产级实现:实时行情高可用与负载均衡
python·架构
Rsun0455140 分钟前
10、Java 桥接模式从入门到实战
java·开发语言·桥接模式
jieyucx1 小时前
Golang 完整安装与 VSCode 开发环境搭建教程
开发语言·vscode·golang
pearlthriving1 小时前
c++当中的泛型思想以及c++11部分新特性
java·开发语言·c++
ronindong1 小时前
Cursor 插件分享 | md-couture:一键将 Markdown 转换成带精美样式的 HTML
人工智能·python·ai编程
智慧地球(AI·Earth)1 小时前
规则引擎实战:Python中re库和pyknow库规则引擎实战教程
开发语言·python·程序人生