Python 列表 extend()函数使用详解

这篇具有很好参考价值的文章主要介绍了Python 列表 extend()函数使用详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

extend() 可以在列表末尾「添加」另一个「序列」中的值。

语法

list.extend( iterable )

参数

  • iterable :需要添加的元素列表

返回值

  • 没有返回值,只是修改原来的列表

实例:向列表中添加另一个列表

list1 = [1, 2, 3]
list2 = [4, 5, 6]

list1.extend(list2)
print(list1)

输出:

[1, 2, 3, 4, 5, 6]

1、可以接收的参数

extend() 接收的参数类型是「可迭代对象」,任何具有_iter_()_getitem_()方法的对象都是可迭代对象,Python内了很多可迭代对象,常见的有 list,str,tuple,dict。

1.1、添加字符串

extend() 可以添加「字符串」类型的数据,字符串的每一个「字符」,都被当做一个新「元素」

list1 = [1, 2, 3]
str1 = 'abc'

list1.extend(str1)
print(list1)

输出:

[1, 2, 3, 'a', 'b', 'c']

1.2、添加元组

extend() 可以添加「元组」类型的数据,和添加列表类似,每个「元素」都被当做一个新元素。

list1 = [1, 2, 3]
tuple1 = (4, 5, 6)

list1.extend(tuple1)
print(list1)

输出:

[1, 2, 3, 4, 5, 6]

1.3、添加字典

extend() 可以添加「字典」类型的数据,只添加键,每一个「键」都被当做一个新「元素」

list1 = [1, 2, 3]
dict1 = {'key1': 1, 'key2': 2}

list1.extend(dict1)
print(list1)

输出:

[1, 2, 3, 'key1', 'key2']

2、原理解析

extend() 只是将元素追加在列表「末尾」,本质上是 “修改” 而不是 “增加”,不会创建新的列表。

Python 列表 extend()函数使用详解,Python,python,网络安全,机器学习,人工智能

我们打印添加前、后的内存地址可以发现,「内存地址」没有变,还是原来的那个列表。

list1 = [1, 2, 3]
list2 = [4, 5, 6]

print(id(list1))
list1.extend(list2)
print(id(list1))

输出:

1930566508928
1930566508928

extend() 在添加其他类型时,会先转换成 list,再添加元素,类似下面这样:

list1 = [1, 2, 3]
str1 = 'abc'

list2 = list(str1)
print(list2)
list1.extend(list2)
print(list1)

输出:

['a', 'b', 'c']
[1, 2, 3, 'a', 'b', 'c']

3、extend() 和 append()、+ 的区别?

以添加列表为例

extend() 添加列表,是将列表中的「每个元素」都当做一个新元素,添加到原来的列表中

list1 = [1, 2, 3]
list2 = [4, 5, 6]

list1.extend(list2)
print(list1)

输出:

[1, 2, 3, 4, 5, 6]

append() 添加列表,是将「>整个列表」当做一个新元素,添加到原来的列表中

list1 = [1, 2, 3]
list2 = [4, 5, 6]

list1.append(list2)
print(list1)

输出:

[1, 2, 3, [4, 5, 6]]

+「拼接」元素,并创建一个新的列表存放,内存地址会改变

list1 = [1, 2, 3]
list2 = [4, 5, 6]

print(id(list1))
print(id(list2))
print(id(list1 + list2))

输出:

2680876376448
2680876376576
2680878544128

+= 的效果跟 extend() 一样,每个元素都被当做一个新元素,并且不会改变内存

list1 = [1, 2, 3]
list2 = [4, 5, 6]
print(id(list1))
list1 += list2
print(list1)
print(id(list1))

输出:

2150265921856
[1, 2, 3, 4, 5, 6]
2150265921856

4、特殊的添加方式

配合算术「运算符」添加列表

list1 = [1, 2, 3]
list2 = [4, 5, 6]

list1.extend(list2 * 2)
print(list1)
list1.extend(list1 + list2)
print(list1)

输出:

[1, 2, 3, 4, 5, 6, 4, 5, 6]
[1, 2, 3, 4, 5, 6, 4, 5, 6, 1, 2, 3, 4, 5, 6, 4, 5, 6, 4, 5, 6]

「索引」取值添加列表

list1 = [1, 2, 3]
list2 = [4, 5, 6]

list1.extend(list2[1:2])
print(list1)

输出:文章来源地址https://www.toymoban.com/news/detail-578118.html

[1, 2, 3, 5]

到了这里,关于Python 列表 extend()函数使用详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 列表 pop()函数使用详解

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 小白零基础《Python入门到精通》 pop() 可以 「删除」 列表中的元素(默认最后一个)。 语法 参数 index :(可选)需要删除的元素的索引值 返

    2024年02月14日
    浏览(34)
  • Python 列表 insert()函数使用详解

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 小白零基础《Python入门到精通》 insert() 可以把对象 「插入」 列表的 「指定位置」 语法 参数 index :(必选)索引位置 obj :(可选)需要插入

    2024年02月16日
    浏览(31)
  • 【Python中extend()方法 列表的扩展、多个列表合并】

    选择题 以下python代码输出结果是什么? aList=[123,\\\'xyz\\\'] bList=[456,\\\'apple\\\'] aList.extend(bList) aList 选项: A [123, \\\'xyz\\\', 456, \\\'apple\\\'] B [123, \\\'xyz\\\'] C [123, 456] D [\\\'xyz\\\', \\\'apple\\\']   问题解析 1.extend()函数的功能是:在列表的末尾追加多个值。extend()函数没有返回值,只是在已存在的列表中进行更改。

    2023年04月08日
    浏览(44)
  • Python中列表的extend()方法介绍

    Python中的extend()方法是一种非常有用的列表操作,它可以将一个列表中的元素添加到另一个列表的末尾。在本篇文章中,我们将向您介绍Python中的extend方法并展示它在不同场景下的使用方法。 extend方法的语法extend方法用于在列表末尾添加另一个列表中的多个元素,它的语法如

    2024年02月13日
    浏览(35)
  • Python Django 之模板继承详解(extends)

    模板继承 和 类继承 的目的是一样的,都是为了提高代码的复用 登录效果:

    2024年02月06日
    浏览(41)
  • Python中的append()、add()、extend()、update()用法详解

    在列表中, append函数 用于向列表的末尾添加一个元素。例如: 需要注意的是,append函数只能添加一个元素,如果要添加多个元素,可以使用 extend函数 或者使用 加号运算符 : 在集合中,append函数并不存在。如果要向集合中添加元素,可以使用 add函数 : 需要注意的是,集

    2024年04月25日
    浏览(37)
  • 【深度学习】 Python 和 NumPy 系列教程(三):Python容器:1、列表List详解(初始化、索引、切片、更新、删除、常用函数、拆包、遍历)

    目录 一、前言 二、实验环境 三、Python容器(Containers) 0、容器介绍 1、列表(List) 1. 初始化 a. 创建空列表 b. 使用现有元素初始化列表 c. 使用列表生成式 d. 复制列表 2. 索引和切片 a. 索引 b. 负数索引 c. 切片 3. 常用操作(更新、删除) a. 更新单个元素 b. 更新切片 c. 删除单

    2024年02月09日
    浏览(51)
  • 爬虫010_列表高级_添加_append_extend_修改_查询_in_not int_删除_del_pop_remove---python工作笔记029

    然后再来看列表操作   首先添加append方法   然后插入,坐标是要插入的下标,右边是插入的内容   看结果   1,2,3,4,5,6 然后这个extend,是逐个插入,放到后边 然后是修改,直接对下标赋值   看结果/

    2024年02月14日
    浏览(55)
  • Python print()函数使用详解,Python打印输出

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 print() 可以 「打印输出」 ,常用来将内容 「打印」 到控制台。 语法 参数

    2024年02月11日
    浏览(56)
  • Python find()函数使用详解

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 小白零基础《Python入门到精通》 find() 可以 「检测」 字符串中是否 「包含指定字符串」 语法 参数 str :(必选)指定需要检测的字符串 star

    2024年02月12日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包