Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从与字符串匹配的列表中删除所有元素_Python_Python 3.x_Python 2.7_List_Remove If - Fatal编程技术网

Python 从与字符串匹配的列表中删除所有元素

Python 从与字符串匹配的列表中删除所有元素,python,python-3.x,python-2.7,list,remove-if,Python,Python 3.x,Python 2.7,List,Remove If,我试图从列表中删除包含字符串“abc”的列表中的所有元素 list_a=['abc-123','abc-000','345-abc','1-abc-b','aaa','ab','xyz'] 我使用以下方法: for i in list_a: if not "abc" in list_a: list_a.remove(i) 当我打印列表时,我看到响应没有删除列表中所有符合条件的元素。我得到以下答复: ['abc-000','1-abc-b','ab'] 我预期的回答是:['aaa'、'a

我试图从列表中删除包含字符串“abc”的列表中的所有元素

list_a=['abc-123','abc-000','345-abc','1-abc-b','aaa','ab','xyz']
我使用以下方法:

for i in list_a:
   if not "abc" in list_a: list_a.remove(i)
当我打印列表时,我看到响应没有删除列表中所有符合条件的元素。我得到以下答复:

['abc-000','1-abc-b','ab']


我预期的回答是:
['aaa'、'ab'、'xyz']

您不应该对正在迭代的列表进行变异。。。创建一个新列表。这通常是使用列表理解的良好环境。
new_lst = [x for x in list_a if 'abc' not in x]                                                                                                                                       
print(new_lst)