2015-04-06 72 views
-8

我想了解下面這段python代碼的工作原理。它計算's'中發現'bob'的次數。具體來說,我不明白'i'的作用。任何幫助將非常感激!我四處搜尋,無法弄清楚答案。計算字符串中的字詞實例

此外,這是我在這裏的第一篇文章,所以如果我沒有以任何方式遵循協議/規範,請隨時讓我知道!

s = 'aeioubobaeioubob' 
numBobs = 0 
for i in range(1, len(s)-1): 
    if s[i-1:i+2] == 'bob': 
     numBobs += 1 
print 'Number of times bob occurs is:', numBobs 
+0

更簡單的方法:'s.count('bob')' –

+0

你只是遍歷字符串的整個長度。嘗試使用打印語句。 – WannaBeCoder

+1

與我,你正在循環所有字符的s,並檢查三個連續的字符是否等於「bob」 –

回答

0

「i」是一個變量,用於跟蹤循環的迭代次數。 「i」從1開始並且每次迭代增加1.

「s [i:i + 3]」表示「s中從'i'處的字符到'i + 3處的字符的值「」。

+2

「我」從0開始:好吧,它可能*應該*,但它不在OP發佈的代碼中。 – DSM

+0

哈哈,是的,我會糾正的, – DrCord

+0

@DrCord,謝謝! –