Вот вопрос:
Реализация функции processList2(inputList, specialItem, ignoreItems)
, которая возвращает новый список, содержащий все элементы inputList
(и в исходном порядке), за исключением
- Удалите все, что появляется в списке
ignoreItems
- Вхождения
specialItem
(если specialItem
отсутствует в ignoreItems
) должны стать строкой "special"
в новом списке.
Я пытаюсь создать новый список из inputList
, используя понимание списка. Я могу получить items not in ignoreItems
, но не могу понять, как напечатать 'special', если item == specialItem
.
Вот что у меня есть:
def processList2(inputList, specialItem, ignoreItems):
return [item for item in inputList if item not in ignoreItems]
пример вывода выглядит примерно так:
>>> processList2([1,1,2,2], 1, [2])
['special', 'special']
или
>>> processList2([1,2,3,4,True,'dog'], 4, [3,5,4])
[1, 2, True, 'dog']