В настоящее время вы пытаетесь добавить 1
к строке s
, которая выдаст TypeError
.Даже если s
было int
, его приращение таким образом не переместилось бы к следующей итерации цикла в Python (или любом другом языке, который я знаю).
Вы можетеиспользуйте ключевое слово continue
, чтобы сразу перейти к следующей итерации цикла.Документы здесь: https://docs.python.org/3/tutorial/controlflow.html#break-and-continue-statements-and-else-clauses-on-loops
Однако я не думаю, что это именно то, что вы хотите сделать здесь, поскольку похоже, что вы пытаетесь подсчитать вхождения подстроки 'bob'
в вашей основной строкеs
.
Вместо этого следует перебирать индексы символов s
и в каждой точке проверять, составляют ли текущий символ и следующие два вместе подстроку 'bob'
.Если это так, увеличьте counter_bob
.
Пример рефакторинга вашего кода с учетом этого:
s = 'mmmmbobob'
counter_bob = 0
for i in range(len(s)):
if s[i:i+3] == 'bob':
counter_bob += 1
print('Number of times bob occurs is: %d' % (counter_bob))
Который печатает:
Number of times bob occurs is: 2