python實(shí)現(xiàn)刪除列表中空字符串元素的兩種方法
python 列表元素中有以下 3 種情況,可認(rèn)為列表中存在有空字符串元素
1、元素內(nèi)容是空字符串('')
2、元素內(nèi)容全是空格(' ')
3、元素內(nèi)容全是\n(換行符)、\t(制表符)、\r(回車)等,這種情況多見(jiàn)于爬蟲(chóng)網(wǎng)頁(yè)文本提取。
如,以下a_list列表:
a_list = ['a', '', ' ', 'b', '', '\n\t', '\r', '']
實(shí)際運(yùn)用中,列表中這些為空字符串的元素可能是不需要的,要對(duì)它進(jìn)行刪除處理。
常見(jiàn)刪除處理方法有以下2種:
1、remove()方法
remove() 方法,刪除首次出現(xiàn)的指定元素,如果列表中不存在要?jiǎng)h除的元素,則拋出異常。
語(yǔ)法:list.remove(obj),obj指定刪除的元素。
實(shí)例:刪除為''的元素
a_list = ['a', '', ' ', 'b', '', '\n\t', '\r', ''] while '' in a_list: a_list.remove('') print("刪除為''的元素后:\n", a_list)
注:要?jiǎng)h除' '、'\n\t'、'\r',只需要把 obj 改成相應(yīng)內(nèi)容即可。
這種方法需要指定具體的元素,一次只能指定一個(gè),可用性不是很高,有時(shí)可能不知道列表中會(huì)出現(xiàn)哪些空字符串情況,或者空字符串的空格有很多個(gè),一個(gè)一個(gè)去指定刪除會(huì)比較麻煩。
2、列表推導(dǎo)式法
(1)列表推導(dǎo)式,使用判斷語(yǔ)句,可以實(shí)現(xiàn)跟 remove() 方法一樣的效果;
(2)列表推導(dǎo)式,使用判斷語(yǔ)句結(jié)合 strip() 方法,可以較為高效的一次刪除列表中各類空字符串。
刪除空字符串元素,用法如下:
a_list = ['a', '', ' ', 'b', '', '\n\t', '\r', ''] b_list = [i for i in a_list if i != ''] # 只去掉'' c_list = [i for i in a_list if i.strip() != ''] # 去掉''、空格、\n\t\r元素 print("只刪除為''的元素:\n", b_list) print("3種空字符串元素一次性全刪除:\n", c_list)
以上就是刪除 python 列表空字符串元素的方法,常用第二種。更多相關(guān)python 刪除列表中空字符串元素內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
YOLOv5構(gòu)建安全帽檢測(cè)和識(shí)別系統(tǒng)使用詳解
這篇文章主要為大家介紹了YOLOv5構(gòu)建安全帽檢測(cè)和識(shí)別系統(tǒng)使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04python實(shí)現(xiàn)單線程多任務(wù)非阻塞TCP服務(wù)端
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)單線程多任務(wù)非阻塞TCP服務(wù)端的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06python實(shí)現(xiàn)停車管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)停車管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11詳解Python 中sys.stdin.readline()的用法
這篇文章主要介紹了Python 中sys.stdin.readline()的用法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09