日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

關(guān)于python中remove的一些坑小結(jié)

瀏覽:195日期:2022-06-30 14:53:17

前幾天,使用python時(shí)遇到這么一個(gè)需求,刪除一個(gè)列表中值為1的元素。我尋思著使用remove方法,但是remove方法只會(huì)刪除第一個(gè),于是我使用for循環(huán)去刪除。代碼和運(yùn)行結(jié)果如下:

關(guān)于python中remove的一些坑小結(jié)

當(dāng)時(shí)這個(gè)結(jié)果讓我很懵逼,為什么1沒(méi)有被刪除完?查了資料發(fā)現(xiàn),是for循環(huán)搗的鬼。因?yàn)閒or循環(huán)實(shí)際是循環(huán)的列表下標(biāo)(索引),同時(shí)由于列表的可變性,每一次刪除一個(gè)元素,列表的長(zhǎng)度就會(huì)發(fā)生變化,元素的索引也會(huì)發(fā)生變化。這里來(lái)具體分析一下這段代碼:

第一次循環(huán),循環(huán)索引為0,此時(shí)索引為0的元素是1,滿足條件,因此mylist中的第一個(gè)1被刪除,此時(shí)mylist變?yōu)閇1,2,1,1,3,4];

第二次循環(huán),循環(huán)索引為1,此時(shí)新列表中,索引為1的元素是2,不滿足條件,mylist仍然為[1,2,1,1,3,4];

第三次循環(huán),循環(huán)索引為2,此時(shí)列表中,索引為2的元素是1,滿足條件,remove方法會(huì)再次刪除一個(gè)1,但是remove會(huì)刪除第一次出現(xiàn)的1(即刪除索引為0的那個(gè)1),因此列表變?yōu)閇2,1,1,3,4];

第四次循環(huán),循環(huán)索引為3,新列表中,索引為3的元素是3,不滿足條件,mylist仍然為[2,1,1,3,4];

第五次循環(huán),循環(huán)索引為4,此時(shí)列表中,索引為4的元素是4,不滿足條件,mylist仍然為[2,1,1,3,4];

此時(shí),由于新列表長(zhǎng)度為5,于是循環(huán)結(jié)束。

下面的截圖結(jié)果能夠很直觀的看出來(lái)。

關(guān)于python中remove的一些坑小結(jié)

至此,如果是這樣的一段代碼,結(jié)果應(yīng)該是怎樣?

關(guān)于python中remove的一些坑小結(jié)

最終mylist=[’b’,’d’],怎么樣,和你計(jì)算的值是否一樣?

回到最初的需求,要怎樣才能刪除所有的1,這里可以使用deepcopy來(lái)復(fù)制一份,之后一個(gè)列表用于循環(huán),一個(gè)用于移除值。代碼和結(jié)果如下:

關(guān)于python中remove的一些坑小結(jié)

這樣就可以實(shí)現(xiàn)刪除列表中的所有值為1的元素。這里可能有人會(huì)問(wèn),為什么不直接將l1賦值給一個(gè)變量,即l2=l1,這里涉及到引用和深淺復(fù)制的問(wèn)題,因此不在此處解答

附:Python列表的remove方法的注意事項(xiàng)

關(guān)于python中remove的一些坑小結(jié)

為何沒(méi)有刪除列表中的全部元素?

解釋:

按照?qǐng)?zhí)行順序,第一個(gè)空格被刪除之后,后面的元素會(huì)前移(變成[’空格’,’空格’,’12’,’23’]),指針下一次會(huì)指向新列表的第二個(gè)元素(即初始狀態(tài)的第三個(gè)空格),從而初始狀態(tài)的第二個(gè)空格被跳過(guò)了,初始第三個(gè)空格被刪除,接著后面的元素又再次前移(變成[’空格’,’12’,’23’]),指針指向新列表的第三個(gè)元素,即初始狀態(tài)的第5個(gè)元素23,然后23被刪除了,因此只剩下[’空格’,’12’]

如果想排除初始列表中的部分元素,如何實(shí)現(xiàn)?

由上面的情況知道,在遍歷列表的同時(shí)對(duì)列表執(zhí)行刪除操作,會(huì)造成意外的結(jié)果,那么對(duì)初始列表進(jìn)行遍歷,對(duì)初始的列表的副本執(zhí)行刪除操作呢?

關(guān)于python中remove的一些坑小結(jié)

以上結(jié)果顯示,沒(méi)有得到預(yù)期效果。為什么?

問(wèn)題出在copy=ls這一句,這里僅僅是使得copy與ls指向了同一片內(nèi)存(即淺拷貝,shallow copy),并沒(méi)有執(zhí)行【開(kāi)辟一片新內(nèi)存,并且ls內(nèi)存中的內(nèi)容復(fù)制到新內(nèi)存,然后使copy指向新開(kāi)辟的內(nèi)存,即深拷貝,deep copy】這一系列操作。因此對(duì)copy執(zhí)行的remove操作,和對(duì)遍歷ls列表,實(shí)質(zhì)上還是都是針對(duì)同一片內(nèi)存進(jìn)行操作,因此結(jié)果上一個(gè)例子類似。

若想解決這一問(wèn)題,有3個(gè)辦法法:

(1)

ls=[’ ’,’ ’,’ ’,’12’,’23’,’abc’,’aa’]copy=[’ ’,’ ’,’ ’,’12’,’23’,’abc’,’aa’]

這一辦法對(duì)于已知列表的所有元素,且元素?cái)?shù)量較少,結(jié)構(gòu)較簡(jiǎn)單時(shí)可行,其他情況下不可行。

(2)引入copy模塊的deepcopy方法:

關(guān)于python中remove的一些坑小結(jié)

(3)另外準(zhǔn)備一個(gè)空列表,遍歷初始列表時(shí),將符合條件的元素逐一加入到空列表當(dāng)中(利用列表的append方法)。

這種方法,思路上與remove方法相反,但執(zhí)行的操作差不多,時(shí)間復(fù)雜度也與remove方法差不多,無(wú)需引入copy模塊。

另外,對(duì)于列表的remove方法,python基礎(chǔ)教程第二版給出的說(shuō)明是:

remove方法用于移除列表中某個(gè)值的第一個(gè)匹配項(xiàng):

>>>x=[’to’,’be’,’or’,’not’,’to’,’be’]>>>x.remove(’be’)>>>x[’to’,’or’,’not’,’to’,’be’]

到此這篇關(guān)于python中remove的一些坑小結(jié)的文章就介紹到這了,更多相關(guān)python中remove的坑內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
麻豆91精品| 99精品在线| 蜜桃传媒麻豆第一区在线观看| 黄色日韩在线| 亚洲日产av中文字幕| 91亚洲精品在看在线观看高清| 国产欧美日韩精品高清二区综合区 | 三级在线看中文字幕完整版| 久久青青视频| 欧美成人日韩| 一区二区三区四区日韩| 日韩av在线免费观看不卡| 国产精品成人3p一区二区三区| 精品一区二区三区在线观看视频| 丝袜诱惑一区二区| 欧美午夜不卡| 日韩免费精品| 精品欧美日韩精品| 欧美不卡视频| 日韩国产一二三区| 精品视频久久| 亚洲不卡av不卡一区二区| 亚洲一区区二区| 国产亚洲欧美日韩精品一区二区三区| 国产精品久久久久久久久久10秀| 欧美高清一区| 人人精品久久| 亚洲最新无码中文字幕久久| 日韩中文字幕麻豆| 久久精品三级| 日本 国产 欧美色综合| 麻豆中文一区二区| 亚洲少妇在线| 麻豆国产欧美一区二区三区| 欧美成人国产| 国产精品任我爽爆在线播放 | 免费一级欧美片在线观看网站| 亚洲www啪成人一区二区| 亚洲在线观看| sm久久捆绑调教精品一区| 蜜桃久久久久久久| 国产一区二区三区四区| 亚洲一区日韩在线| 国产69精品久久| 亚洲毛片一区| 亚洲视频综合| 国产三级精品三级在线观看国产| 婷婷综合社区| 韩日一区二区| 偷拍亚洲精品| 精品丝袜在线| 久久wwww| 亚洲精品日本| 99久久九九| 麻豆精品国产91久久久久久| 午夜在线精品偷拍| 日韩在线二区| 久久一区视频| 日韩区欧美区| 影音国产精品| 日本少妇一区| 精品精品久久| 国产精选一区| 婷婷五月色综合香五月| 不卡一区综合视频| 精品一区二区三区亚洲| 日韩高清电影一区| 久久电影一区| 一区二区小说| 久久精品青草| 国产粉嫩在线观看| 国产精品主播在线观看| 伊人国产精品| 国产精品日本| 狠狠色综合网| 久久国产电影| 亚洲欧洲高清| 日韩成人精品一区二区| 国产精品一区二区精品| 日韩av不卡在线观看| 午夜精品网站| 国产综合欧美| 欧美日韩精品免费观看视完整 | 亚洲精品九九| 麻豆91精品| 麻豆成人在线| 99热精品在线| 日韩视频一区| 最新日韩欧美| 国产精品普通话对白| 精品欧美激情在线观看| 国产91精品对白在线播放| 日韩深夜视频| 欧美激情另类| 亚洲综合电影| 成人啊v在线| 久久久久久久久久久妇女| 欧美aa在线观看| 久久国产毛片| 国产综合精品一区| 国产亚洲综合精品| 丝袜诱惑制服诱惑色一区在线观看 | 婷婷中文字幕一区| 免费精品国产的网站免费观看| 久久久影院免费| 亚洲四虎影院| 亚洲少妇诱惑| 日韩国产在线一| 国产精品久久久久久妇女| 开心激情综合| 日韩欧美看国产| 亚洲午夜在线| 日韩在线卡一卡二| 亚洲69av| 久久免费精品| 91精品蜜臀一区二区三区在线 | 亚洲精品福利| 国产毛片一区二区三区| 精品不卡一区| 国内亚洲精品| 日韩中文字幕不卡| 欧美国产三级| 欧美日韩精品一区二区视频| 久热精品在线| 国产视频一区二| 午夜影院一区| 欧美另类综合| 中文字幕免费一区二区| 国产精品多人| 欧美亚洲国产一区| 亚洲人www| 九九久久国产| 伊人精品视频| 国产精品天天看天天狠| 91视频一区| 一本色道久久精品| 国产精品探花在线观看| 久久裸体视频| 五月国产精品| 日韩黄色大片网站| 免费久久精品视频| 久久国产精品美女| 欧美日韩视频| 另类综合日韩欧美亚洲| 婷婷综合五月| 国产精品嫩模av在线| 欧美亚洲激情| 国产精品高清一区二区| 亚洲免费黄色| 国产成人久久精品麻豆二区 | 亚洲欧美视频| 国产va免费精品观看精品视频| 亚洲女同一区| 久久精品国产99国产| 伊人国产精品| 国产福利片在线观看| 日韩中文字幕视频网| 日韩精品2区| 97精品国产99久久久久久免费| 欧美日韩一二三四| 国产精品亚洲欧美日韩一区在线| 亚洲大全视频| 国产专区精品| 蜜桃视频在线观看一区| 日韩国产网站| 国产欧美91| 视频一区二区欧美| 日韩精品欧美| 欧美xxxx性| 亚洲一区二区三区无吗| 岛国精品一区| 久久国产精品色av免费看| 99亚洲视频| 日韩国产激情| 国产精品极品| 亚洲欧美日本国产| 国产99久久| 精品国产aⅴ| 日韩国产在线不卡视频| 国产精品日本欧美一区二区三区| 成人精品久久| 国产精品色在线网站| 一区二区高清| 伊人久久亚洲热| 久久中文字幕av| 97在线精品| 欧美国产不卡| 国产欧美日韩一级| 欧美一区成人| 婷婷综合福利| 亚洲涩涩av| 久热综合在线亚洲精品| 国产99精品一区| 久久久久国产精品一区二区| 成人高清一区| 精品国产欧美日韩一区二区三区| 国产视频一区二| 国产亚洲一卡2卡3卡4卡新区| 日韩午夜视频在线| 中文字幕日韩欧美精品高清在线|