用单个元素替换列表中的多个元素

The_AlphaCeph

我想用列表中的单个元素替换两个或多个元素,如下所示:

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

现在我想用另一个元素“z”替换“a”和“b”元素。所以输出应该是:

['z','z','c']
弘主角

一个列表理解一个选项:

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:]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章