原始字符串列表:

Originals = ["nice apple", "orange", "pear sweet", "red ape"]


要删除的字符串列表:

To_remove = ["nice ", " sweet"]


我要实现的是删除原始单词中每个元素中需要删除的字符串

result: ["apple", "orange", "pear", "red ape"]


我会关注,但效果不佳。

for t in To_remove:
    for o in Originals:
        print o.replace(t, "")


正确的方法是什么?谢谢。

最佳答案

字符串是不可变的。因此,您不能在字符串上调用的任何方法都进行就地修改。它们都返回一个新字符串,因此您必须重新分配replace返回的字符串:

for t in To_remove:
    for i in range(len(Originals)):
        Originals[i] = Originals[i].replace(t, "")


您可以查看此question,了解如何合并多个模式的替换。

07-24 12:53