Python 我想打印';否';在for循环的末尾。我该怎么办?

Python 我想打印';否';在for循环的末尾。我该怎么办?,python,for-loop,Python,For Loop,如果有相同的单词,我成功地返回“是”,但 a = input() list_a = list(a) b = input() list_b = list(b) for i in range(len(a)): added = list_a[-1] list_a.pop() list_a.insert(0, added) if list_a == list_b: print('Yes') break else:

如果有相同的单词,我成功地返回“是”,但

a = input()
list_a = list(a)
b = input()
list_b = list(b)

for i in range(len(a)):
    added = list_a[-1]
    list_a.pop()
    list_a.insert(0, added)

    if list_a == list_b:
        print('Yes')
        break
    else:
        continue

我应该如何在for循环的末尾返回“No”?

您需要的是一个helper标志来告诉您在这两种情况中您处于哪种情况。默认为
False
,这意味着默认情况下两个列表中的单词不相同

a = input()
list_a = list(a)
b = input()
list_b = list(b)
list_are_the_same = False
for i in range(len(a)):
    added = list_a[-1]
    list_a.pop()
    list_a.insert(0, added)

    if list_a == list_b:
        list_are_the_same = True
        break
result = 'Yes' if list_are_the_same else 'No'
print(result)
我又做了一次编辑-对于其他内容,您不需要显式的
continue
,无论如何都会发生这种情况

编辑(感谢python_学习者教我一个新的python构造): 您还可以使用,代码将变为:

a = input()
list_a = list(a)
b = input()
list_b = list(b)
for i in range(len(a)):
    added = list_a[-1]
    list_a.pop()
    list_a.insert(0, added)

    if list_a == list_b:
        print('Yes')
        break
else:
    print('No')