Python-直接扩展列表会导致无,为什么?

发布于 2021-01-29 15:03:26

x=[1,2,3]
x.extend('a')

输出:

x is [1,2,3,'a']

但是当我执行以下操作时:

[1,2,3].extend('a')

输出:

None

为什么扩展列表引用而不是列表扩展?

第二部分:

我发现这是因为我在尝试将listC扩展到listB时试图将listB附加到listA。

listA.append([listB[15:18].extend(listC[3:12])])

假设列表不能直接附加/扩展。解决该问题最常用的表格形式是什么?

关注者
0
被浏览
82
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    list.extend修改到位列表,不返回任何内容,从而导致None。在第二种情况下,这是一个正在扩展的临时列表,该列表在该行后立即消失,而在第一种情况下,可以通过引用x

    在尝试将listC扩展到listB时将listB附加到listA。

    除了使用之外extend,您可能想要尝试以下操作:

    listA.append(listB[15:18] + listC[3:12])
    

    或者,extend如果要实际修改listB或,则用多个简单的行来完成listC



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看