如何清空清单?

发布于 2021-01-29 16:08:09

似乎很“肮脏”以这种方式清空列表:

while len(alist) > 0 : alist.pop()

是否存在明确的方法?

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

    实际上,这将从列表中删除内容,但不会用新的空列表替换旧标签:

    del lst[:]
    

    这是一个例子:

    lst1 = [1, 2, 3]
    lst2 = lst1
    del lst1[:]
    print(lst2)
    

    为了完整起见,切片分配具有相同的效果:

    lst[:] = []
    

    它也可以用于缩小列表的一部分,同时替换一部分(但这超出了问题的范围)。

    请注意,这样lst = []做不会清空列表,只是创建一个新对象并将其绑定到变量lst,但是旧列表仍将具有相同的元素,并且如果具有其他变量绑定,效果将显而易见。



知识点
面圈网VIP题库

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

去下载看看