【for陷阱】遍历的同时删除元素

时间:2023-03-09 00:04:44
【for陷阱】遍历的同时删除元素

今晚,哦不,是昨晚了,想删除空行时,给for语句和列表坑得好惨!!!

一般来说,删除字符串的空行有以下几种常见的方法~(然而我竟然想不出来)

假设我们要把下面的字符串之间的空行给去掉

 # coding: utf-8

 txt = """
This is a nice day!
Nice to meet you! How are you? """
# 按换行符分割为列表
list = txt.split("\n")
print list

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAwIAAAAUCAIAAACxuR30AAAEOElEQVR4nO2WSbblIAxD//5XxdJq9k4qBiNkHCDRHSWAbblJ8/f3VUoppZSzPOdxoub3oS4IIcQaygXngG+eJ6y6aBkSo9+gK8s1Txew4cQSxx5geesJttW81dStigtOuwCx37jqgbzQ3O6SuN1a9aPShV7ymFmyxYg85nZttxeHFbPPlO6jBGdPzbtN3aq4dnHPfh1B6zNnz+RF53aXxO0+g3zUiKwgRFw9cicyt2vdh2HJh6HoN2gSe2rebepWxbWLe/Zrf27j1Jquj8wVHpcUduiY+jPhD033bUXU5BnPQ7bZ1aAzukm6eXDyxVc4VRlYPU6+oAd8FxRWNec827aOegYlDQmzh1sr+Ek8o++QXeduaN9z98xoB/PyDVbjs5BVOrS4VdmlRutAy2fkecj2PGSbWo25GV3Nu1vWFZ7U81g9Tr6+eXYXpni2hk6+o3GDqpyVrmDE25CkV5Jd525ox/PQgaGgzsqsfEeFfRaySocWtyr7Niut0QEXicrkeSZs49Vo2YKeI6qq8pBKlguInmx+SuxF9ZhdzOiCEzTo2c83nhHXWd8PIgPxxml7E6XBbde5td4iSqwqR3P1Fo/ixHVufW+EpI9DFurQ+lZlg4PlLAZLkeG51ODEjFYj6JmzdfKNZLSKnxh7UT3WXXR2RxNvnZ/S32q+vmckLtfcSNwTp24VpcF1156/XVcnhwt923IM/RU/aGtl4lxptEDIWh1aYmdiiGPXdfsUBVVFPFtD3DxSDT9KnirfcySjVbSyc475i7ddrgu+f7DOvk970dWMZDSaI5JRZDco7GVMqXN1cpC4/lxxtkjcbkbErr8oWpDlOrTK4MTQgzX0MOR5BjOK2BIlKg3iqiK7oPiHsfp36ILvH6yz79NedDUjGY3miGQU2Q0KexnxOvvdnxXXnnwmruYqG7Jch1YZnBh8sEDbPFWgw+m2zmIxb6jq7RCI55a8iTIe46awpfnhLjhBg4F+J+1F1xUSiEt5qJLZZX8xtjJEYW/Miuvbcg3VXO0GWcPU0uc5r3r2H4a/2pNmD7d2ET3TPVtD3Dy1GnNrVeBXIVKNUT2zbBGHSEbWnNsFtc31/DtsL6ZkROdrPUdUtYThembZRpget1W6263fguotErflvOun29zR0KBn3xYU39XG2UZYFZcPnao4zzk4MUNDeTtA6HnGM+ghuxp0Rn//v+O6qqpZVG2raRLCOFvQ4T5d8M05z7Y1Tge5jOiUr1a0qqpta3FIGGcbYXrcVlXtSquGzi0S+kZLg2+OB73ZVmNprg4Ina14VTnEF8iYXk3sF1j4pq6y8LOxJO5b0Vwtj8v/BiU1b6uBEO9j+txqYj/CVp+rr32rXozmalXc0J9M6m+QEHMphtWKxBlockQGmqtNUAvEV9AbR3BockQGmishhBBCCCGEEEIIIYQQQgghxM78AxWc8LHTDfnWAAAAAElFTkSuQmCC" alt="" />

方法1:  用 for ... in range()

for eachline in range(list):

    # 从上面的输出可知,只要把列表里面的空白元素 "" 给删掉就行了
list.remove("")