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

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

列表元素上的索引輸出不正確 - Python

列表元素上的索引輸出不正確 - Python

繁星coding 2021-12-09 10:58:37
我剛開始學習 Python 并且我被困在這個問題上?;旧衔蚁胝页銎鏀邓饕栔械募犹枴_@是我的代碼。def odd_ones(lst):    total = []    for i in lst:        if i % 2 == 1:            total.append(i)    return totalprint(odd_ones([1,2,3,4,5,6,7,8])) 輸出是[1, 3, 5, 7] 代替 [2, 4, 6, 8]有人可以幫我嗎?
查看完整描述

3 回答

?
素胚勾勒不出你

TA貢獻1827條經驗 獲得超9個贊

輸出是正確的。您迭代值列表而不是它的索引。條件i % 2 == 1給出以下:


1 % 2 = 1 (true)

2 % 2 = 0 (false)

3 % 2 = 1 (true)

4 % 2 = 0 (false)

5 % 2 = 1 (true)

6 % 2 = 0 (false)

7 % 2 = 1 (true)

8 % 2 = 0 (false)

所以輸出是 (1,3,5,7)


查看完整回答
反對 回復 2021-12-09
?
滄海一幻覺

TA貢獻1824條經驗 獲得超5個贊

如果您不想將奇數放入數組中,則需要更改條件,因此代碼最像這樣:


def odd_ones(lst):

    total = []

    for i in lst:

        if i % 2 == 0:

            total.append(i)

    return total


print(odd_ones([1,2,3,4,5,6,7,8]))

輸出:[2, 4, 6, 8]


查看完整回答
反對 回復 2021-12-09
?
波斯汪

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

你想找到奇數 inedx ,但你真正要做的是找到奇數元素


for i in lst:  #(i ---->the element in lst)   

    if i % 2 == 1:

所以你應該試試這個


for i in range(len(lst)): #( i ---> the index of lst)

    if i % 2 == 1:


查看完整回答
反對 回復 2021-12-09
  • 3 回答
  • 0 關注
  • 274 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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