循环问题(python):变量求值不正确



为什么print(lovescore(显示4而不是3?

name1 = "Ikechukwu"
word1 = "Ike"
lovescore = 0
i = 0
while i < len(word1):
for letter in name1:
if word1[i] == letter:
lovescore +=1

i += 1
print(lovescore)

(它不会让我在不添加更多文本的情况下发布。所以只添加这个作为填充(

字母kname1中出现两次,因此当i为1时,word1[i] == letter将为True两次。

您可以通过在lovescore +=1之后添加break或将for循环替换为以下内容来更改它以避免重复此内容:

if word1[i] in name1:
lovescore += 1

最新更新