def remove_ignore_char(word):
ignore_char = ['A', 'B', 'C',
]
for char in ignore_char:
if char in word:
word = word.replace(char, '')
return worddef remove_ignore_char(word):
ignore_char = ['A', 'B', 'C',
]
for char in ignore_char:
if char in word:
word = word.replace(char, '')
return word此法最简洁了吧~
python3
>>> 'ABCxAxBxFCABxCabc'.translate(''.maketrans('','','ABC'))
'xxxFxabc'
你要的解决方案
import string
table = string.maketrans("abcd", " ")
word = "abcdefg"
word.translate(table)
将上面的代码封装成一个非常通用的函数
def translator(frm="", to="", delete="", keep=None):
if len(to) == 1:
to = to * len(frm)
trans = string.maketrans(frm, to)
if keep is not None:
allchars = string.maketrans("", "")
delete = allchars.translate(allchars, keep.translate(allchars, delete))
def translate(s):
return s.translate(trans, delete)
return translate
abcd_to_empty = translator(frm="abcd", to=" ")
abcd_to_empty(word)
delete_vowels = translator(delete="aoieu")
delete_vowels(word)
del_digits = translator(delete="1234567890")
del_digits("abcdeeeee12223444dkfljadl")4 回答968 阅读
1 回答574 阅读
1 回答696 阅读
1 回答691 阅读
1 回答526 阅读
642 阅读
584 阅读
python 2 则去掉第一行
或