擅长:python、mysql、java
<p>for循环正在更改“i”变量,因此如果向其添加2,则不会发生任何更改。我的意思是‘I’的值改变了,但只有在这一次。紧接着,它被再次设置,并有一个新的值(由for循环设置)</p>
<p>这是我的解决办法</p>
<pre><code>s = 'XYXXXXXYX'
count = 0
i = 0
while i < len(s):
if s[i] == 'X':
count += 1
i += 3
else:
i += 1
print(count) # 3
#With the for loop
count = 0
skipped = 0
is_skipping = False
for i, letter in enumerate(s):
if not is_skipping:
if letter == 'X':
count += 1
is_skipping = True
else:
skipped += 1
if skipped > 2:
is_skipping = False
skipped = 0
print(count) # 3
</code></pre>