2015-04-23 84 views
0

編寫一個函數first_last6(nums),該函數接受一個ints nums列表,並返回True,如果6顯示爲列表中的第一個或最後一個元素。該列表將長度爲1或更長。代碼打印錯誤答案

我的代碼:

def first_last6(nums): 
    if nums[0] or nums[-1] == "6": 
     return True 
    else: 
     return False 

它沒有返回正確的答案這個測試:

print(first_last6([3, 2, 1])) 

其假設是False,而它打印True

+0

[爲什麼\'a == b或c或d \'總是評估爲True?](http://stackoverflow.com/questions/20002503/why-does -ab-or-c-or-d-always-evaluate-to-true) – inspectorG4dget

+0

可能的重複[如何測試一個變量與多個值?](http://stackoverflow.com/questions/15112125/how- do-i-test-one-variable-against-multiple-values) – Blckknght

回答

0

原始測試檢查是否NUMS [0]爲真,或者如果NUMS [-1]是6,以檢查是否任一爲6,應該使用:

如果NUMS [0] == 6或NUMS [ -1] == 6:

+0

還要確保它是6而不是像NeilZ答案中的「6」 – jwillis0720