我是Python編程新手。我希望得到一些關於輸出背後原因的指導。我只是在網上做一些練習,遇到了一個我無法理解的問題。代碼如下:檢查列表中的值。在循環內部還是外部循環?
def dataset(data,n):
for value in data:
if n == value:
return True
else:
return False
print(dataset([1,5,8,3], 3))
print(dataset([1,5,8,3],-1))
輸出將是False, False
這是不正確的答案。
經過一番修補之後,我發現了這個問題。正確的代碼如下:
def dataset(data,n):
for value in data:
if n == value:
return True
return False
print(dataset([1,5,8,3], 3))
print(dataset([1,5,8,3],-1))
輸出結果爲True, False
這是正確的答案。
所以我的問題是爲什麼不同的輸出與return False
和else: return False
只是不同的投入?
**所有**迭代完成後返回與第一次迭代期間總是返回完全不同。 –
你真的只需要'返回數據'。循環是不必要的 –
三位邏輯學家走進一家酒吧: *調酒師問道:「你們三個人都喜歡喝啤酒嗎?」 *第一個回覆「我不知道」 *第二個回覆「我也不知道」 *第三個回覆「是的,我們三個人都想喝啤酒」 –