生成循环脚本,需要在执行时删除列表元素

2024-09-30 04:40:47 发布

您现在位置:Python中文网/ 问答频道 /正文

Python问题

import fnmatch

list_1 = ['family', 'brother', 'snake', 'famfor']

list_2 = ['a', 'f', 'f', 'm', 'i', 'l', 'y']

match = fnmatch.filter(list_1, 'fa????')

print match

这会给我

>> ['family', 'famfor']

我怎么能在这个查询中只找到家人? 通过检查清单2的有效字母。你知道吗


Tags: importmatch字母家人filterfamilylistfa
1条回答
网友
1楼 · 发布于 2024-09-30 04:40:47

您可以首先将list_2转换为一个集合以进行有效的查找,然后使用带有条件的列表理解作为筛选器:

set_2 = set(list_2)
[w for w in list_1 if all(c in set_2 for c in w)]

这将返回:

['family']

相关问题 更多 >

    热门问题