亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么此代碼會返回“彈出索引超出范圍”?

為什么此代碼會返回“彈出索引超出范圍”?

冉冉說 2022-12-20 11:21:27
我試圖理解導致這種情況的邏輯和過程,但仍然不明白為什么會這樣。抱歉,如果這是一個非常簡單/糟糕的問題。這是問題:返回數組中數字的總和,除了忽略以 6 開頭并延伸到下一個 7 的數字部分(每個 6 后面至少有一個 7)。沒有數字則返回 0。這是有錯誤的代碼:def sum67(nums):  ans = 0  if len(nums) == 0:    return 0   elif 6 not in nums:    for val in nums:      ans += val    return ans    elif 6 in nums:    x = nums.index(6)    y = nums.index(7, x)    for i in range(x, y):      nums.pop(i)  for val in nums:    ans += val  return ans這是錯誤:pop index out of range
查看完整描述

1 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

哇哦!我剛剛了解了該del功能。


我的解決方案是更換:


elif 6 in nums:

  x = nums.index(6)

  y = nums.index(7, x)

  for i in range(x, y):

    nums.pop(i)` 

和:


while 6 in nums:

  x = nums.index(6)

  y = nums.index(7, x)

  del nums[x:y+1]


查看完整回答
反對 回復 2022-12-20
  • 1 回答
  • 0 關注
  • 88 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號