【发布时间】:2018-02-20 12:04:49
【问题描述】:
我很难理解下面的代码。尤其是最后一行。
string = "abcdcdc"
sub_string = "cdc"
print(sum([1 for i in range(0, len(string) - len(sub_string) + 1) if (string[i:(len(sub_string) + i)] == sub_string)]))
代码的输出是'2'。
此代码写入在上面给出的字符串中找到的子字符串的次数。
任何解释将不胜感激。
【问题讨论】:
-
因为
'cdc'在'abcdcdc'中出现了2次? -
你能解释一下吗?因为这就是我要寻找的。span>
-
@Farhan.K,请停止屈尊。问题很明确:用户想要的是代码的解释,而不是结果。这是一个很好的问题 +1。
-
@jpp 不是在编辑之前
标签: python string loops for-loop substring