如何替换列表中的所有值,直到达到特定的ceratin值或item索引?如果输入是:
mylist = ['a', 'b', 'c', 'd']
可以说我们选择的索引是2
,我们想用$
代替。因此,输出应如下所示:
list_op = ['$', '$', '$', 'd']
我们可以实现此python标准功能吗?
答案 0 :(得分:1)
您可以使用切片分配:
lst = ["a", "b", "c", "d"]
lst[:3] = 3 * ["$"]
print(lst) # ['$', '$', '$', 'd']
这意味着:将lst
(即lst[:3]
)的前三个元素替换为3 * ["$"]
(即['$', '$', '$']
)。
如果您只想替换两个中间元素:
lst[1:3] = 2 * ["$"]
# ['a', '$', '$', 'd']
还请注意,list
是python中的内置函数,因此不是很好的变量名。