【发布时间】:2020-12-10 12:55:38
【问题描述】:
def count_emma(statement):
print("Given String: ", statement)
count = 0
for i in range(len(statement) - 1):
count += statement[i: i + 4] == 'Emma'
return count
count = count_emma("Emma is good developer. Emma is a writer")
print("Emma appeared ", count, "times")
在这个程序中,我必须找出“Emma”在以下语句中出现的次数:“Emma is good developer. Emma is a writer”。
我的问题:我不明白第 5 行发生了什么。没有 if 子句怎么是条件语句?语句中每次出现“Emma”时,计数如何增加 1?
【问题讨论】:
-
"Emma 是优秀的开发者。Emma 是作家".count("Emma")
-
True等于1,False等于0,所以如果条件为真,则添加1,如果条件为假,则添加0。 -
count += statement[i: i + 4] == 'Emma'声明正在做这项工作,但我不认为它是 pythonic。 -
@VishalSingh 是的,我真的不知道它是如何完成这项工作的
-
这不是一个好榜样。
if .... : count += 1会更清晰,更易于维护(尽管还有其他解决整体问题的方法)。
标签: python function conditional-statements