Python中是否有替换列表元素的内置函数?如何实现列表元素替换?
Python列表替换指定元素的实现方法
Python没有内置专门用来批量替换列表中所有指定值的函数,但是可以通过列表自带的基础操作或者列表推导式快速实现需求,以下是对应场景的解决方案:
分场景实现方案
场景1:替换列表中所有的
_为指定字母
最简洁的方式是使用列表推导式,示例如下:given_list = ['_', '_', '_', '_'] target_char = 'X' # 替换为你需要的指定字母 # 生成新列表,不修改原列表 new_list = [target_char if item == '_' else item for item in given_list] # 如果需要直接修改原列表,直接赋值给原变量即可 # given_list = [target_char if item == '_' else item for item in given_list]执行后输出结果为:
['X', 'X', 'X', 'X']场景2:替换指定位置的
_为指定字母
列表支持直接通过索引赋值修改元素,比如要修改索引为1的位置的元素:given_list[1] = 'Y'执行后输出结果为:
['_', 'Y', '_', '_']场景3:仅替换第一个匹配到的
_
先通过index()方法找到第一个匹配值的索引,再赋值即可:if '_' in given_list: first_idx = given_list.index('_') given_list[first_idx] = 'Z'执行后输出结果为:
['Z', '_', '_', '_']
内容的提问来源于stack exchange,提问作者saranjoel
相关产品推荐
相关产品推荐

