我在遍历列表时如何删除元素时读到了这一点: 在Python中遍历列表时删除元素
以此为例:
>>> colors=['red', 'green', 'blue', 'purple']
>>> filter(lambda color: color != 'green', colors)
['red', 'blue', 'purple']
Run Code Online (Sandbox Code Playgroud)
但是,如果我想删除元素,如果它是字符串的一部分,我怎么能这样做?即如果我输入'een'(只是颜色中'绿色'字符串元素的一部分,我想过滤'绿色'?
使用列表推导而不是使用filter():
>>> colors = ['red', 'green', 'blue', 'purple']
>>> [color for color in colors if 'een' not in color]
['red', 'blue', 'purple']
Run Code Online (Sandbox Code Playgroud)
或者,如果您想继续使用filter():
>>> filter(lambda color: 'een' not in color, colors)
['red', 'blue', 'purple']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
136 次 |
| 最近记录: |