python - 最有效的代码来搜索和替换句子中的单词?

时间:2015-10-12 12:53:35

标签: python string replace character

我正在通过在线Python课程中的简单练习 - 一个名为“censor”的练习需要2个输入,一个句子和一个单词 - 然后返回句子,并将所有给定单词的实例替换为星号。每次替换中的星号数等于原始单词中的字符数。为简单起见,练习假定不需要输入错误检查。我的代码有效,但我想知道它是否可以提高效率?:

def censor(text, word):
    textList = text.split()
    for index, item in enumerate(textList):
        count = 0
        if item == word:
            for char in word:
                count += 1
            strikeout = "*" * count
            textList[index] = strikeout
            result = ' '.join(textList)
    return result

1 个答案:

答案 0 :(得分:7)

字符串对象上已有一个函数可以执行此操作:

def censor(text,word):
    return text.replace(word, "*"*len(word))