l=['hello','world']
first=l[0]
second=l[1]
d=len(first);
x=0
while d>=0:
e=len(second)-1
while e>=0:
if first[d-1]==second[e]:
x+=1
else:
e-=1
d-=1
if x>0:
print("YES")
else:
print("NO")
我正在使用python 3.上面的代码应该输出YES作为输出,但它不是,而是程序继续无限期地运行。我是python的新手。有什么我想念的。
答案 0 :(得分:1)
您应该将while循环更改为
while e>=0:
if first[d-1]==second[e]:
x+=1
e-=1
相同的原因是,首先说[d-1] ='a',然后第二个[e]也='a'然后它将永远不会减少e的值,而你在条件e> = 0时会满足它并且它将再次转到条件为d没有改变,也不是e变量,从而导致无限循环。