Python - 返回移除另一个字符串字符的字符串函数
"""Return a copy of str1 with characters from str2 removed.
filter_string(string, string) -> string
"""
for a in str1:
if a in str2:
str1.replace(a,"")
return str1
我这样做对吗?
str1和str2是包含可变字符串的变量
到目前为止,我的输出是 21 oramrfrrdonRsmsov creea h tite twrch
我想要的输出是 21mdnRmvhiwh
2 个回答
1
使用列表推导式:
>>> str1 = "HelloWorld"
>>> str2 = "World"
>>> "".join([i for i in str1 if i not in str2])
'He'
>>>
5
你的函数可以用非常简单的方法来写,使用的是 str.translate
这个功能:
str1 = str1.translate(None, str2)
这个方法会把 str1
中所有在 str2
里的字符都去掉。
举个例子:
>>> 'Hello, world!'.translate(None, 'lewf!')
Ho, ord