首页 > 解决方案 > 审查文本中的给定单词

问题描述

我是 Python 的初学者。这是我在论坛中发现的一个挑战。该程序正在审查除第一个字母外的带有“*”的单词(由用户给出)字母。例如,如果句子是“Every Breath you take every move you make”,输入词是“every”,输出应该是这样的:

2 incidents found.
Censored lyrics:
E**** breath you take e**** move you make

这是我唯一的想法,但没有奏效。

text=input("Enter your text: ").lower()
word=input("Choose a word from the previously entered text: ").lower()
def censor(text,word):
t=text.split()
n=[]
for i in t:
    if(i==word):
        n.append("*"*len(word))
    else:
        n.append(i)
return " ".join(n)
print (censor)

任何帮助,将不胜感激!

标签: pythonpython-3.x

解决方案


这里的问题是,当你找到这个词时,你只是把 * 你从不添加第一个字母。要解决这个问题,您需要:

n.append(word[0]+"*"*(len(word)-1))

代替

n.append("*"*len(word))

现在它将添加第一个字母和正确的 * 编号。


推荐阅读