第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

返回參數(shù)列表時(shí)出現(xiàn)奇怪的輸出

返回參數(shù)列表時(shí)出現(xiàn)奇怪的輸出

ABOUTYOU 2022-08-02 17:37:56
法典def removeEven(List):    for x in List:        if x % 2 == 0:            List.remove(x)    return Listprint(removeEven([18, 106, -158, -124, 199, -28, -68, -91, 46, -190, 63, -30, 142, -36, -162, -121, 14, -192, -143, -57, -59, -129, -146, -76, -186, -84, 70, 19, -13, -12, -5, 179, -191, -43, 160, -156, 105, 104, 93, -188, -184, -197, -136, -35, 16]))輸出[106, -124, 199, -68, -91, -190, 63, 142, -162, -121, -192, -143, -57, -59, -129, -76, -84, 19, -13, -5, 179, -191, -43, -156, 105, 93, -184, -197, -35]法典def removeEven(List):    result = []    for x in List:        if x % 2 != 0:            result.append(x)    return result輸出[199, -91, 63, -121, -143, -57, -59, -129, 19, -13, -5, 179, -191, -43, 105, 93, -197, -35]我遇到了這種奇怪的行為。我正在編寫一個(gè)簡(jiǎn)單的函數(shù)來從列表中刪除偶數(shù),但是當(dāng)我修改作為參數(shù)傳遞的列表并返回它時(shí),我得到了一個(gè)奇怪的輸出。有誰知道原因是什么?請(qǐng)注意,我不是在尋找這個(gè)問題的答案,很容易谷歌,但只是解釋為什么當(dāng)我不創(chuàng)建新列表并返回它時(shí)輸出不同。
查看完整描述

1 回答

?
幕布斯6054654

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊

Python中的一個(gè)使用列表理解的Liner:


[x for x in li if x % 2 != 0]

返回參數(shù)列表時(shí)出現(xiàn)奇怪的輸出


不允許在使用 for 循環(huán)循環(huán)循環(huán)訪問元素時(shí)從列表中刪除元素。執(zhí)行此操作的最佳方法包括創(chuàng)建一個(gè)新列表 - 要么循環(huán)訪問副本,要么構(gòu)造一個(gè)僅包含所需元素的列表并將其賦回同一變量。


眾所周知,列表中的每個(gè)項(xiàng)目都位于其自己獨(dú)特的索引中;按順序排列,從 0 開始。如果我們刪除某個(gè)項(xiàng)目,則索引大于我們刪除的索引的任何項(xiàng)目現(xiàn)在都已向下移動(dòng)。


這就是為什么這很重要:


foo = ['a', 'b', 'c', 'd']

for index in range(len(foo)):

    del foo[index]

在這個(gè)循環(huán)中,我們刪除了所有元素,所以我們應(yīng)該以foo == []結(jié)束,對(duì)吧?事實(shí)并非如此。在我們第一次循環(huán)行程中,我們刪除索引 0 處的項(xiàng)目,索引 1 處的項(xiàng)目成為索引 0 處的項(xiàng)目。我們下次通過循環(huán)時(shí),我們刪除索引 1 處的項(xiàng)目,該項(xiàng)以前是索引 2 處的項(xiàng)目。


請(qǐng)參閱此處,詳細(xì)了解如何在循環(huán)訪問列表時(shí)刪除元素。請(qǐng)參閱此處,詳細(xì)了解如何在反向迭代列表時(shí)刪除元素。


查看完整回答
反對(duì) 回復(fù) 2022-08-02
  • 1 回答
  • 0 關(guān)注
  • 136 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)