append()用于在列表末尾添加新的对象,输入参数为对象;
extend()用于在列表末尾追加另一个序列中的多个值,输入对象为元素队列;
2.相同点两个都是对列表即list进行的 *** 作
具体句法可以写为:
list1.append(obj) # list1在使用时更改为你想要添加新的对象的列表名,obj为输入对象
list2.extend(seq) # list2在使用时更改为想要追加元素序列的列表名,seq为元素序列
3.区别
如上所述,append是在列表末尾增加新的对象,这个对象可以是列表,并且是列表本身;而extend是在列表末尾增加新的元素序列,这个序列是列表中具体的元素,而非列表本身
4.举例下面举一个例子来进行直观上的说明
list1 = [1, 2]
list2 = [3, 4]
list3 = [1, 2]
list1.append(list2) # 追加新对象
print(list1)
list3.extend(list2) # 追加新元素序列
print(list3)
下面注意从输出结果的不同来进行理解
[1, 2, [3, 4]] # append的输出结果
[1, 2, 3, 4] # extend的输出结果
注意到extend相当于将输入对象(此处是列表,还可以是字符串或字典)等拆开加入到新的列表中
但要注意字典是比较特殊的,他在用extend时,加入的默认为‘’key‘‘,而在用append时,是整个加入的
list1 = [1, 2]
list2 = [1, 2]
list1.extend({'zhangsan': 18, 'lisi': 22}) # 字典(默认key)
print(list1)
list2.append({'zhangsan': 18, 'lisi': 22})
print(list2)
这时extend输出结果为仅将“alice”和“amy”加入到list1中,attend输出结果为追加一个字典
# output
[1, 2, 'zhangsan', 'lisi'] # extend
[1, 2, {'zhangsan': 18, 'lisi': 22}] # append
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)