code = ['#+/084&"', '#3*#%#+', '8%203:', ',1$&', '!-*%', '.#7&33&', '#*#71%', '']
如何更改此列表,以便例如,如果我想要更改“D”的所有“#”,则列表将如下所示:
code = ['D+/084&"', 'D3*D%D+', '8%203:', ',1$&', '!-*%', '.D7&33&', 'D*D71%', '']
答案 0 :(得分:1)
您还可以将替换操作映射到列表:
map(lambda x: str.replace(x, '#', 'D'), code)
如果是在Python 3中,您可能需要:
list(map(lambda x: str.replace(x, '#', 'D'), code))
答案 1 :(得分:0)
对列表解析中的每个值调用str.replace()
:
code = [s.replace('#', 'D') for s in code]
答案 2 :(得分:0)
使用list comprehension和str.replace
:
>>> code = ['#+/084&"', '#3*#%#+', '8%203:', ',1$&', '!-*%', '.#7&33&', '#*#71%', '']
>>> code[:] = [x.replace("#", "D") for x in code]
>>> code
['D+/084&"', 'D3*D%D+', '8%203:', ',1$&', '!-*%', '.D7&33&', 'D*D71%', '']
>>>
注意:仅当您希望列表对象保持不变时才需要 [:]
。否则,您可以将其删除。