Skip to main content
 首页 » 编程设计

Python之如何替换列表中的字符串

2025年05月04日17zdz8207

我正在编写的脚本会生成一个名为“trt”的充满字符串的列表。在进一步处理列表之前,可能需要替换其中一些字符串。例如,字符串“5”需要替换为“4”,但不要与“-5”或“5*”等字符串混淆。解决方案不得更改列表“trt”中字符串的顺序或在列表中输入任何新字符或空格。

我已经尝试这样做了:

trt = [word.replace('5','4') for word in trt] 

但这不是一个好的解决方案,因为它会影响“5*”并使脚本运行异常。

请您参考如下方法:

如果我没理解错的话,你想要这个:

trt = ['4' if word == '5' else word for word in trt] 

如果你需要做很多这样的替换,你可能想要定义一个映射:

replacements = { 
    '5': '4', 
    'a': 'b', 
} 
trt = [replacements.get(word, word) for word in trt] 

get 在 replacements 字典中查找 word,如果没有找到则返回 word 本身键,或相应的值(如果有)。