對(duì)python list 遍歷刪除的正確方法詳解
在遍歷list的時(shí)候,刪除符合條件的數(shù)據(jù),可是總是報(bào)異常,代碼如下:
num_list = [1, 2, 3, 4, 5] print(num_list) for i in range(len(num_list)): if num_list[i] == 2: num_list.pop(i) else: print(num_list[i]) print(num_list)
原因是在刪除list中的元素后,list的實(shí)際長(zhǎng)度變小了,但是循環(huán)次數(shù)沒(méi)有減少,依然按照原來(lái)list的長(zhǎng)度進(jìn)行遍歷,所以會(huì)造成索引溢出。
解決方案:倒序循環(huán)刪除
num_list = [1, 2, 3, 4, 5] print(num_list) for i in range(len(num_list)-1, -1, -1): # for i in range(0, num_list.__len__())[::-1] if num_list[i] == 2: num_list.pop(i) else: print(num_list[i]) print(num_list)
以上這篇對(duì)python list 遍歷刪除的正確方法詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)點(diǎn)云分割k-means(sklearn)詳解
這篇文章主要為大家詳細(xì)介紹了Python實(shí)點(diǎn)云分割k-means,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05
使用numpy轉(zhuǎn)換成cupy利用GPU執(zhí)行錯(cuò)誤
在使用PyInstaller打包Python程序時(shí),可能會(huì)遇到缺少模塊的錯(cuò)誤,尤其是在將Numpy轉(zhuǎn)換為CuPy以利用GPU加速時(shí),如果遇到ModuleNotFoundError,表明PyInstaller沒(méi)有包含一些隱式導(dǎo)入的包,解決方法是手動(dòng)將缺失的包添加到打包目錄中2024-09-09
python 遍歷目錄(包括子目錄)下所有文件的實(shí)例
今天小編就為大家分享一篇python 遍歷目錄(包括子目錄)下所有文件的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
Python openpyxl模塊實(shí)現(xiàn)excel讀寫操作
這篇文章主要介紹了Python openpyxl模塊實(shí)現(xiàn)excel讀寫操作,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
Python Selenium 之關(guān)閉窗口close與quit的方法
今天小編就為大家分享一篇Python Selenium 之關(guān)閉窗口close與quit的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-02-02
Sphinx環(huán)境配置及VScode編寫Rst文檔轉(zhuǎn)html的步驟
sphinx主要用于編寫 reStructuredText 和 Markdown 格式技術(shù)文檔,編寫此類技術(shù)文檔時(shí)Sphinx工具可將其轉(zhuǎn)為html、pdf、ePub等格式,這篇文章主要介紹了Sphinx環(huán)境配置及VScode編寫Rst文檔轉(zhuǎn)html,需要的朋友可以參考下2023-03-03

