Задать вопрос

Как удалить определённый элемент в массиве?

Всем привет, представим, что я получаю строку и перевожу её в список через метод .split(), под индексом 1 и 2 лежат цифры 0, но иногда они могут лежать под индексом 2 и 3, а иногда под 3 и 4. Вопрос такой, зная, что в моём списке есть цифры 0 и их 2, возможно ли удалить именно эти значения в списке? Возможно через del как-то
  • Вопрос задан
  • 1256 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@dmshar
Я так понял, вы желаете из массива удалить сразу ВСЕ заданные элементы, например - все нули. Их количество заранее неизвестно.
Тогда вот так

al=[0,1,2,0,3,2,0,2]
al=[x for ind,x in enumerate(al) if x!=0]


Ответ:

Out[12]: [1, 2, 3, 2, 2]


Ну, а если вдруг, почему-то надо только через del, тогда вот так:

for i in [ind for ind,x in enumerate(al) if x==0][::-1]:
        del al[i]
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Xaeruz
@Xaeruz
Программный Змей
Элемент можно удалить по индексу:
list = [1, 2, 3]
list.pop(1)

Удалить можно зная название:
list = [1, 2, 3]
list.remove(1)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы