Так как вам нужно вырваться из обоих циклов, чтобы else
работал так, как вы ожидаете, я думаю, что будет проще просто вообще не использовать else
здесь.Если вы определяете свой код в функции, вы можете использовать return
для одновременного выхода из обоих циклов.
Например:
def have_common_elements():
l1 = eval(input("Enter a list: "))
l2 = eval(input("Enter another list: "))
for i in range (len(l1)):
for j in range (len(l2)):
if l1[i] == l2[j]:
return True
return False # will only happen if the previous `return` was never reached, similar to `else`
have_common_elements()
Пример:
Enter a list: [1,34,543,5,23,"apple"]
Enter another list: [54,23,6,213,"banana"]
True
Enter a list: [1,34,543,5,25,"apple"]
Enter another list: [54,23,6,213,"banana"]
False