Python3 AttributeError: объект 'list' не имеет атрибута 'clear'

Я работаю на Linux-машине с Python версии 3.2.3. Всякий раз, когда я пытаюсь сделать list.clear() Я получаю исключение

>>> l = [1, 2, 3, 4, 5, 6, 7]
>>> l.clear()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'list' object has no attribute 'clear'

в то же время на моем Mac с Python 3.4.3 тот же код работает гладко. Это может быть из-за разницы между версиями Python или я чего-то не хватает?

1 ответов


list.clear был добавлен в Python 3.3.

со ссылкой на Изменяемые Типы Последовательности раздел в документации:

новое в версии 3.3: clear() и copy() методы.

s.clear() удаляет все элементы из s (как и del s[:])

посмотреть выпуск #10516 для соответствующего обсуждения и альтернативных способов очистки списков. Вкратце, это то же самое, что del l[:] и l[:] = [].