清除列表

Dan*_*Dan 8 python refactoring memory-management list

我觉得很烦人,我无法清除列表.在这个例子中:

a = []
a.append(1)
a.append(2)

a = []
Run Code Online (Sandbox Code Playgroud)

第二次将a初始化为空白列表时,它会创建一个列表的新实例,该列表位于内存中的不同位置,因此我无法使用它来引用第一个,更不用说它效率低下了.

我可以看到保留相同指针的唯一方法是执行以下操作:

for i in range(len(a)):
    a.pop()
Run Code Online (Sandbox Code Playgroud)

这看起来很啰嗦,有没有更好的方法来解决这个问题?

Tho*_*ers 27

您正在寻找:

del L[:]
Run Code Online (Sandbox Code Playgroud)

  • 同样,你也可以做L [:] = [] (2认同)