これはPythonの演習であり、Pythonの変数スコープについて混乱しています。
「指定された文字列に「xyz」の外観が含まれ、xyzの前にピリオド(。)が直接付いていない場合は、Trueを返します。したがって、「xxyz」はカウントされますが、「x.xyz」はカウントされません。
xyz_there('abcxyz')→True
xyz_there('abc.xyz')→False xyz_there('xyz.abc')→True "
これが私の答えです:
def xyz_there(str):
for i in range(len(str)-2):
if str[i]=='.':
i+=1
continue
elif str[i:i+3]=='xyz':
return True
return False
そしてそれは間違っています。xyz_there('abc.xyz') → False
常に戻りTrue
ます。変数i
は常に0,1,2...であるため、i+=1
これは何の意味もありません。なぜ???