1 Fork me on GitHub

Python常用数据结构-列表 ——2.2 列表的方法 extend()

2.2 列表的方法  extend()

extend(iterable):将一个可迭代对象的所有元素,添加到列表末尾

入参:可迭代对象iterable
返回:None

1. 概述

python中内置了 append() 以及 extend() 方法,这两个方法功能类似,但是实际的使用上是完全不同的;
首先用法类似,均是list.appenf(obj) , list.extend(seq).

list.append(obj)和list.extend(seq)的不同点:

可以看看区别:点击这里 

3. extend()

3.1 描述

extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

3.2 语法

extend()方法语法:list.extend(seq)

3.3 描述参数

seq – 元素列表,必须是一个可以迭代的序列,比如数字就不可以

3.4 返回值

该方法没有返回值,但会在已存在的列表中添加新的列表内容

extend()实例:

extend(),一次添加多个。把一个列表添加到另一个列表 ,列表合并。

看栗子:使用extend()方法

# 语言列表
language = ['法语', '英语', '德语']

# 另一个语言列表
language1 = ['西班牙语', '汉语']

language.extend(language1)

# 被extend的列表
print('语言列表: ', language)

查看返回:

示例2:添加元组元素并设置为列表

# 语言列表
language = ['法语', '英语', '德语']

# 语言元组 tuple
language_tuple = ('西班牙语', '汉语')

# set 集合
language_set = {'韩语', '日语'}

# 追加语言元组的元素
language.extend(language_tuple)

print('新的语言列表: ', language)

# 追加语言集合的元素
language.extend(language_set)

print('最新的语言列表: ', language)

打印返回:

传递给extend()方法的 原生数据类型(如tuple和set)将自动转换为list。 并且,列表的元素被追加到列表末尾

例子1:

li = []
li.extend("hogwarts")    # 添加的是字符串的所有字母
li.extend([1,2,3])       # 接收列表的所有元素
li.extend((4,5,6))       # 接收元祖的所有元素
li.extend({"a":1,"b":2}) # 接收字典的所有key值
print(li)

打印结果:

extend方法:批量添加元素,简单理解就是可以作用于for循环来进行遍历的对象,比如常见的字符串、列表、元祖、集合、字典

例子2:

li = []
li.append(1)
li.append("hogwarts")
li.extend("hello")
print(len(li),li)    #  打印元素个数和当前列表
li2 = ["a","b","c"]
li.extend(li2)       #  li后面添加li2列表里面的元素
print(li)            #  打印最终列表

运行结果:

例子3:

#声明一个空列表
girls = []

#append(),末尾追加
girls.append('杨超越')
girls.append('灿烂')
print(girls)
#extend(),一次添加多个。把一个列表添加到另一个列表 ,列表合并。 models = ['刘雯','奚梦瑶'] girls.extend(models) #girls = girls + models print(girls)

打印返回:

 例子4:

用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

A = [1, 2, 3]
B = [['a', 'b']]
A.extend([4])
A.extend([5, 6])
B.extend(['c', 'd'])
B.extend([['e', 'f']])
print(A)
print(B)

打印返回:

extend() 函数、append()函数、+ 与 += 功能比较:

append()是向列表尾部追加一个新元素,列表只占一个索引位,在原有列表上增加。
extend()向列表尾部追加一个列表,将列表中的每个元素都追加进来,在原有列表上增加。
+与extend()在效果上具有相同的功能,但是实际上生成了一个新的列表来存放这两个列表的和,只能用在两个列表相加上。
+=与extend()效果一样。

append():
A = [1, 2, 3]
B = [4, 5, 6]
print(A.append(B))
print(A)

打印返回:

extend():
A = [1, 2, 3]
B = [4, 5, 6]
print(A.extend(B))
print(A)

打印返回:

+:
A = [1, 2, 3]
B = [4, 5, 6]
print(A+B)
print(A)

打印返回:

 +=:
A = [1, 2, 3]
B = [4, 5, 6]
A += B
print(A)

打印返回:

 

项list.append(obj)list.extend(seq)参数不相同append(obj)参数是obj,任意对象都是可以的;extend(seq)参数必须是可迭代的对象,例如整型数字就不可以。功能不相同append(obj)是直接将整个obj放入列表末尾;extend(seq)是将seq打散后依次放入列表末尾————————————————版权声明:本文为CSDN博主「Ardor-Zhang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qq_41800366/article/details/86367465
posted @ 2022-04-24 18:13  v_jjling  阅读(524)  评论(0编辑  收藏  举报
AmazingCounters.com