首先,我們來隨便寫一個帶空格的列表:
list1 = ['122','2333','3444',' ','422',' ',' ','54',' ']
相信已經有人嘗試過,諸如以下的方式去刪掉空格,例如:
# -*- coding:utf-8 -*-for i in list1: if i == ' ': list1.remove(' ')print list1但是結果你會發現是這樣的,它總是不能完全的刪完空格,會在末尾留下一個。

方法一:
這個時候,可以嘗試把‘=='改為in:
# -*- coding:utf-8 -*-for i in list1: if ' ' in list1: list1.remove(' ')print list1
之前我在網上看過用‘'join的方式,鏈接找不到了,這種方法它確實能刪掉帶一個長度的空字符串‘ ',但是對于間隔比較規律的還好,間隔不規律的就不太友好了,并且無論間隔規律與否,它都會生成0長度‘'空字符串的。
方法二:
方法一是后來寫這篇文章的時候測試文章最開頭那個錯誤的寫法的時候,因為記得不太清,無意中想到了in,結果發現結果是對的,我自己最先想到的方法是這樣的,先獲取空格的個數,然后遍歷,逐個刪除:
for i in range(list1.count(' ')): list1.remove(' ')
方法三:
然后用了for我就在想可不可以用while,用while怎么寫,測試了一下發現果然可以:
while ' ' in list1: list1.remove(' ')print list1
以上是比較早寫的了,用的大多是remove,現在學了些優化,然后加上評論里的提示,才發現推導式也可以,感謝了!
這篇python 刪除列表里所有空格項的方法總結就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答