在下面的代码中,为什么len()前面有一个星号?
def censor (text,word):
if word in text:
text= text.replace(word, "*" *len(word))
return text
为什么你不能把len(单词)?
答案 0 :(得分:4)
您的代码有点误导,应该是:
text = text.replace(word, "*" * len(word))
星号是乘法运算符 - 它将字符串"*"
乘以您正在审查的单词的长度,以构建被删除的字符串。
答案 1 :(得分:1)
>>> word = "hello"
>>> len(word)
5
>>> "*" * len(word)
'*****'
为什么你不能把len(单词)?
len(word)
为您提供5
。
然后我们将'*'
乘以5
,得到'*****'
答案 2 :(得分:0)
代码的作用是将星号乘以单词的长度。 *
是乘法运算符。您无法放置len
,因为代码会出错("*"len(word)
是无效的语法)。例如,如果有五个字符,则会放五个星号。
len("qwert") * "*" = "*****"