根据另一个列表删除列表中的项目

Rrp*_*ptm 2 python list

如何lst1根据列表从列表中删除项目lst2

lst1 = ['abc__2','def__3','xyz__3','pqr__1']
lst2 = ['def','xyz','tuv']
Run Code Online (Sandbox Code Playgroud)

分裂我做了

lst3 = [k.split("__")[0] for k in lst1]
Run Code Online (Sandbox Code Playgroud)

删除我做了

new_list = [i for i in lst3 if i not in lst2]
Run Code Online (Sandbox Code Playgroud)

但这样一来,就失去了原单的独创性。

必填清单: new_list = ['abc__2','pqr__1']

Guy*_*Guy 5

arr3您可以if在创建时将它们拆分,而不是使用拆分的值进行创建new_arr

arr1 = ['abc__2', 'def__3', 'xyz__3', 'pqr__1']
arr2 = ['def', 'xyz', 'tuv']
new_arr = [i for i in arr1 if i.split("__")[0] not in arr2]
print(new_arr) # ['abc__2', 'pqr__1']
Run Code Online (Sandbox Code Playgroud)