Заменить несколько элементов в списке одним элементом - PullRequest
0 голосов
/ 11 марта 2020

Я хочу заменить два или более элементов одним элементом в списке следующим образом:

mylist=['a','b','c']

Теперь я хочу заменить элементы 'a' и 'b' другим элементом 'z'. Таким образом, вывод должен быть:

['z','z','c']

1 Ответ

0 голосов
/ 11 марта 2020

список-опция:

mylist = ['a', 'b', 'c']
new_list = [x if x not in "ab" else "z" for x in mylist]
print(new_list)  # ['z', 'z', 'c']

, если элементы, которые вы хотите заменить, более сложные, вы можете попробовать:

if x not in {"a", "b"}

, если вы хотите изменить вещи, основанные на индексе i, вы можете использовать enumerate:

new_list = [x if i >= 2 else "z" for i, x in enumerate(mylist)]
print(new_list)  # ['z', 'z', 'c']

, но тогда вы можете рассмотреть нарезку :

new_list = 2 * ["z"] + mylist[2:]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...