[PYTHON] Remplacer «un caractère» par un «caractère spécifié»

Remplacez «apprentissage» dans «J'apprends Python» par «******». ( du nombre de caractères que vous souhaitez remplacer)

def censor(text,word):
    x = []
    star = "*"*len(word)
    for i in text.split():
        x.append(i)
    for j in x:
        if j == word:
            x.insert(x.index(word),star)
            x.remove(j)
    return " ".join(x)
    
print censor("I'm learning Python", "learning")

Un autre modèle.

def censor(text, word):
    x = text.split()
    for i in x:
        if i == word:
            x[x.index(i)]= "*"*len(word) 
    return " ".join(x)
print censor("I'm learning Python", "learning")

Cependant, il est préférable d'utiliser enumerate () car il faut beaucoup de temps pour traiter ce qui précède.

def censor(text,word):
    x = []
    star = "*"*len(word)
    for i in text.split():
        x.append(i)
    for index,j in enumerate(x):#here
        if j == word:
            x.insert(index,star)#here
            x.remove(j)
    return " ".join(x)
    
print censor("I'm learning Python", "learning")
def censor(text, word):
    x = text.split()
    for index,i in enumerate(x):#here
        if i == word:
            x[index]= "*"*len(word)#here
    return " ".join(x)
print censor("I'm learning Python", "learning")

Merci @usai!

Recommended Posts

Remplacer «un caractère» par un «caractère spécifié»
Code de caractère