append与extend的区别

append与extend的区别

在课程的视频讲解里,说append是将整个列表追加到原始列表末尾,extend是将列表里的元素追加到原始列表末尾,为啥做2-16编程练习题的时候,将list1追加到list2用的是append呢?还有对列表去重是什么呢?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好:

1、append方法是将整个元素(任何类型)添加到列表的末尾。

extend是将一个(列表,元组等可以通过for循环遍历)中的元素添加到列表的末尾。

http://img1.sycdn.imooc.com//climg/5e70a78e09a5ff2e05360347.jpg

我们通过遍历list1得到的是一个int类型的元素,不是一个可以for循环遍历的类型,因此使用append。

http://img1.sycdn.imooc.com//climg/5e70a8c609f6557207520399.jpg

2、列表的去重我们是使用了一个判断的,判断list1遍历出来的元素是否在list2中。不在则添加,反之判断下一个元素。

for i in list1:

    # if判断list1中的每个元素不在list2中

    if i not in list2:

如果我解决了同学的问题,请采纳!学习愉快^_^。

又是摆烂的一天 2020-03-17 16:59:48

list1 = [23, 98, 56, 55, 76, 98, 55]

# 定义list2为空列表

list2 = []

# 循环遍历list1

for i in list1:

    # if判断list1中的每个元素不在list2中

    if i not in list2:

    # 将元素追加到list2中

        list2.append(i)

# 使用sort对list2进行降序排序

list2.sort(reverse=True)

print(list2)



2-16用的append,是因为你是一个一个遍历list1中的元素,遍历一个就将一个元素加到list2中,你遍历得到的数据是单个元素,而不是字典,所以用append

而list1.extend(list2) 是直接将list2中的元素加到list1中,是将list2中的元素看作要添加的对象的

list1.append(list2) 是将list2这个列表看成整体要添加的对象的,这个操作执行完的结果就是列表里边嵌套列表

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师