[PYTHON] Ersetzen Sie ein Zeichen durch ein angegebenes Zeichen.

Ersetzen Sie "Lernen" in "Ich lerne Python" durch "******". ( der Anzahl der Zeichen, die Sie ersetzen möchten)

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")

Ein anderes Muster.

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")

Es ist jedoch besser, enumerate () zu verwenden, da die Verarbeitung der oben genannten Informationen lange dauert.

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")

Danke @usai!

Recommended Posts

Ersetzen Sie ein Zeichen durch ein angegebenes Zeichen.
Zeichencode