我正在尝试根据另一个列表中的项目列表删除列表中的项目(其中的项目略有不同)。
就像“通配符”搜索一样,我最终使用endswith
进行了如下检查:
main_ctrls = [
"main_start_ctrl",
"main_global_ctrl",
"main_local_ctrl",
"main_path_ctrl"
]
toy_ctrls = ['toyBody:main_start_ctrl', 'toyBody:main_global_ctrl', 'toyBody:leg_ctrl', 'toyBody:main_local_ctrl', 'toyBody:main_path_ctrl']
for index, ctrl in enumerate(toy_ctrls):
if ctrl.endswith(tuple(main_ctrls)):
#toy_ctrls.remove(ctrl)
# del toy_ctrls[index]
# toy_ctrls.pop(index)
print toy_ctrls
# Returns : ['toyBody:base_global_ctrl', 'toyBody:base_path_ctrl', 'toyBody:leg_ctrl']
但是,如上面的代码所示,我尝试了.remove()
,del
,.pop()
,它返回的是相同的输出(列表中的3个项目),而不是1个项目-我期望的['toyBody:leg_ctrl']
。
有人可以建议吗?