3 回答

TA貢獻1802條經驗 獲得超5個贊
在循環的第一次迭代中,循環檢查是否nums[0]
為 9 并始終返回True
or False
; 您沒有機會檢查其余元素。你應該只True
在被檢查的元素是 9 時返回,并且False
只在前四個元素失敗時返回,即在循環之外。
def array_front9(nums): return 9 in nums[:4]

TA貢獻1111條經驗 獲得超0個贊
代碼中的問題是,如果列表中的第一個數字不是 9,那么循環將停止并且函數執行將停止它,因為return False處于 else 條件。
def array_front9(nums):
count = [len(nums), 4][len(nums) > 5]
for i in range(count):
if nums[i] == 9:
return True
return False

TA貢獻1858條經驗 獲得超8個贊
我認為你需要:
def array_front9(nums):
count = 4
if len(nums)<4:
count = len(nums)
if 9 in nums[:count]:
return True
return False
你的代碼有什么問題
if nums[i]==9:
return True
else:
return False
在上面的行中,您只是檢查第一個值,如果它是 9,那么它返回 True,否則返回 False
添加回答
舉報