【发布时间】:2009-09-09 20:34:42
【问题描述】:
灵感来自this question.
为什么python中没有list.clear()方法?我在这里发现了几个问题,说正确的方法是以下之一,但没有人说为什么不只是一种方法。
del lst[:]
lst[:] = []
虽然它可能违背“python 的禅宗”,有不止一种做某事的方式,但对我来说,有一个“list.clear()”方法似乎更明显。它也符合 dicts 和 sets,两者都有 .clear()。
我在 python-dev 和 python-ideas 上看到了一些关于此的帖子,但没有得出明确的答案(请参阅 here (2006) 和 here (2009))。圭多有考虑过吗?这只是过去 4-5 年尚未解决的争论点吗?
更新: list.clear() 在 3.3 中被添加到 python - see here
【问题讨论】:
-
这太荒谬了,当然知道原因是有价值的。它深入了解了语言的设计方式,并提供了对 python 的更深入理解。对于声称像 python 一样用户友好和直观的语言,我很惊讶它不存在。如果有充分的理由,我想不出一个。