Удалить все случаи значения из списка?

Спасибо за превосходный совет. Мы закончили тем, что использовали пользовательский HTTP-заголовок для передачи маркера идентификационных данных от клиента в службу, при подготовке к интеграции нашего УСПОКОИТЕЛЬНОГО API с предстоящая платформа Идентификационных данных Церматта из Microsoft. Я описал проблему здесь и наше решение здесь . Я также взял совет tweakt и купил УСПОКОИТЕЛЬНЫЕ веб-сервисы - очень хорошая книга, если Вы создаете УСПОКОИТЕЛЬНЫЙ API какого-либо вида.

340
задан Aran-Fey 26 June 2019 в 03:53
поделиться

3 ответа

Функциональный подход:

2.x

>>> x = [1,2,3,2,2,2,3,4]
>>> filter(lambda a: a != 2, x)
[1, 3, 3, 4]

3.x

>>> x = [1,2,3,2,2,2,3,4]
>>> list(filter((2).__ne__, x))
[1, 3, 3, 4]

или

>>> x = [1,2,3,2,2,2,3,4]
>>> list(filter(lambda a: a != 2, x))
[1, 3, 3, 4]
460
ответ дан 23 November 2019 в 00:35
поделиться

Вы можете использовать присвоение срезов, если исходный список должен быть изменен, при этом по-прежнему используется эффективное понимание списка (или выражение генератора).

>>> x = [1, 2, 3, 4, 2, 2, 3]
>>> x[:] = (value for value in x if value != 2)
>>> x
[1, 3, 4, 3]
101
ответ дан 23 November 2019 в 00:35
поделиться

Вы можете использовать понимание списка:

def remove_values_from_list(the_list, val):
   return [value for value in the_list if value != val]

x = [1, 2, 3, 4, 2, 2, 3]
x = remove_values_from_list(x, 2)
print x
# [1, 3, 4, 3]
193
ответ дан 23 November 2019 в 00:35
поделиться
Другие вопросы по тегам:

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