Python 从列表中删除包含字符的字符串中的字符

Python 从列表中删除包含字符的字符串中的字符,python,Python,基本上,我应该让列表中的字符从字符串中取出,就像在测试中一样。我不确定这为什么不起作用。我们非常感谢您的帮助。我需要像这样的函数,这样我就可以导入到其他文件 感谢您抽出时间试试: def replace_chars(stringa, listb): '''A function to return stringa by removing the list of characters from listb''' #print(stringa) #print(listb)

基本上,我应该让列表中的字符从字符串中取出,就像在测试中一样。我不确定这为什么不起作用。我们非常感谢您的帮助。我需要像这样的函数,这样我就可以导入到其他文件

感谢您抽出时间

试试:

def replace_chars(stringa, listb):
    '''A function to return stringa by removing the list of characters from listb'''
    #print(stringa)
    #print(listb)
    for x in stringa:
        if x == listb:
            stringa.replace(x,listb)
    return stringa
if __name__ == "__main__":
    import test
    test.testEqual(replace_chars(" My!Name*Is#John*",["!", "*", "#", "*"]), " My Name Is John ")

我没有收到任何错误,只是没有删除字符,只是保持不变。像这样的“My!NameIs#John”Replace
if x==listb
if x in listb
stringa.Replace(x,,)
刚刚尝试了这个,我仍然得到了相同的输出,没有任何东西被删除。
def replace_chars(stringa, listb):
    '''A function to return stringa by removing the list of characters from listb'''
    #print(stringa)
    #print(listb)
    for x in listb:
        stringa = stringa.replace(x,' ')
    return stringa
if __name__ == "__main__":
    #import test
    print(replace_chars(" My!Name*Is#John*",["!", "*", "#", "*"]))