嘿,我正在爲星期二爲Python課程進行的考試進行評估,我試圖製作一個程序來檢查2個列表,看它們是否具有相同的項目/值,但順序不同。爲什麼我的比較程序無法正常工作?
這是我到目前爲止有:
def reOrder(list1, list2):
if len(list1) != len(list2):
return False
for element1 in list1:
foundElement = False
for element2 in list2:
if element1 == element2:
foundElement = True
if foundElement == False:
return False
else:
return True
print(reOrder([1,7,10,8,4,2], [3,1,8,10,2,4]))
出於某種原因,它仍然打印true上述聲明。關於如何解決這個問題的任何想法?
,直到你已經檢查列表1中的所有元素 – Himanshu
你會uncoditionally返回TRUE;或'FALSE'外循環的第一個迭代你不應該返回true。花一些時間來學習如何使用調試器來遍歷代碼,因爲這會使它比通過閱讀代碼更加明顯。 –
這就是因爲它返回第一個值'1'本身的功能並沒有完成刪除返回True並粘貼在最後 –