Как удалить из массива все элементы равные n python?

Пользователь

от otha_marks , в категории: Python , 2 года назад

Как удалить из массива все элементы равные n python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от NicolasSsh , 2 года назад

@otha_marks  Вы можете использовать цикл и блок if для удаления элементов, равных n.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
n = int(input())

array = [1, 2, 3, 4, 5, 6, 7, 7, 7, 5, 3]

print([x for x in array if x != n])

# Ввод : 7
# Вывод : [1, 2, 3, 4, 5, 6, 5, 3]

# Ввод : 5
# Вывод : [1, 2, 3, 4, 6, 7, 7, 7, 3]

Пользователь

от willis.streich , год назад

@otha_marks 

Для удаления всех элементов, равных определенному значению n, из массива в Python можно использовать метод remove() в цикле while. Вот пример:

1
2
3
4
5
6
7
arr = [1, 2, 3, 4, 3, 5, 3]
n = 3

while n in arr:
    arr.remove(n)

print(arr)  # [1, 2, 4, 5]


В этом примере мы создали список arr и установили значение n на 3. Затем мы запустили цикл while, который будет продолжаться, пока n будет находиться в массиве. Внутри цикла мы используем метод remove(), чтобы удалить первый экземпляр n из массива. Цикл продолжается, пока все экземпляры n не будут удалены из массива.


После завершения цикла while мы выводим массив arr, который теперь не содержит никаких элементов, равных n.