Перейти к содержимому

Что делает метод list clear

  • автор:

Метод clear

Метод clear удаляет все элементы в списке. В параметре метода ничего не указываем.

Синтаксис

список.clear()

Пример

Давайте удалим все элементы в нашем списке:

lst = [‘a’, ‘b’, ‘c’] lst.clear() print(lst)

Результат выполнения кода:

Пример

А теперь давайте применим метод clear у пустому списку:

lst = [] lst.clear() print(lst)

После выполнения кода метод вернет нам также пустой список:

Смотрите также

  • метод pop ,
    который удаляет элемент по его индексу
  • метод remove ,
    который удаляет элемент из списка
  • метод append ,
    который добавляет элемент в конец списка

В чём разница между list.clear() и list = []?

Писал только что код, и не мог найти ошибку пока не изменил list.clear() на list = []. вот код на питоне:

def reverse_ascending(items): if len(items) == 2: return list(reversed(items)) stack = [] s = [] count = 1 while count < len(items): if items[count-1] < items[count]: s.insert(0, items[count-1]) elif items[count-1] >items[count]: s.insert(0, items[count-1]) stack.append(s) s = [] else: stack.append([items[count-1]]) if count == len(items)-1: s.insert(0, items[count]) stack.append(s) count += 1 return [i for x in stack for i in x] if len(items) > 1 else items print("Example:") print(reverse_ascending([1, 2, 3, 4, 5])) # These "asserts" are used for self-checking and not for an auto-testing print(reverse_ascending([1, 2, 3, 4, 5])) # [5, 4, 3, 2, 1] print(reverse_ascending([5, 7, 10, 4, 2, 7, 8, 1, 3])) # [10, 7, 5, 4, 8, 7, 2, 3, 1] 

Задание: Создайте и верните новый итерируемый элемент, содержащий те же элементы, что и итерируемые элементы аргумента, но с обратным порядком элементов внутри каждого максимального строго восходящего подсписка. Еле-еле нашёл что если заменить s.clear() на s = [] то в stack добавляется список из s и сохраняется. НО, если я напишу s.clear() то stack тоже удаляется. можете побробывать. Почему очистка списка s затрагивает список stack?

Отслеживать
задан 9 дек 2018 в 14:02
47 1 1 серебряный знак 9 9 бронзовых знаков

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

lis.clear() очищает массив сохраняя ссылку. Если где-то есть другие ссылки на этот же объект, они теперь ссылаются на пустой массив.

list = [] — создание нового объекта. Другие ссылки продолжают ссылаться на старый (заполненный) массив. Манипуляции с list на старый массив не повлияют.

Отслеживать
ответ дан 9 дек 2018 в 14:05
user176262 user176262

  • python-3.x
  • методы
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.3.2953

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Метод list.clear() в Python, очищает список

Метод clear() был включен для обеспечения согласованности с интерфейсами изменяемых контейнеров, которые не поддерживают срезы, такие как dict и set .

Эта операция поддерживаются изменяемыми типами последовательностей.

Примеры очистки значений списка.

>>> x = [3, 6, 9] >>> x.clear() >>> x # [] >>> x = ['one', 'two', 'three', [3, 6, 9]] >>> x.clear() >>> x # [] >>> x = [3, 6, 9, 11, 13] >>> del x[:] # [] 
  • ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
  • Изменение/замена элемента списка по индексу
  • Изменение части списка операцией среза
  • Изменение списка срезом c заданным шагом
  • Удаление части списка операцией среза
  • Удаление части списка по срезу с заданным шагом
  • Метод list.append(), добавляет значение в конец списка
  • Метод list.clear(), очищает список
  • Метод list.copy(), копия списка
  • Метод list.extend(), расширяет список другой последовательностью
  • Расширение списка его содержимым
  • Метод list.insert(), вставить элемент по индексу
  • Метод list.pop(), получение с удалением элемент списка
  • Метод list.remove(), удаление элемента списка по значению
  • Метод list.reverse(), разворачивает элементы списка
  • Удаление элемента списка по индексу
  • Удаление дубликатов из списка Python с сохранением очередности

Что делает метод list clear

Описание

Метод clear позволяет целиком очистить список, и удалить все его элементы. После успешного выполнения длина списка становится равной 0.

В случае, если массив фиксированный длины, то, генерируется ошибка UnsupportedError , а элементы остаются неизменными.

Смотрите также

List::removeAt — Удаляет произвольный элемент списка

List::removeLast — Извлекает и возвращает последний элемент списка

List::removeRange — Удаляет ряд элементов из списка

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *