检查列表中的字符串,但使用通配符ch

2024-09-27 00:17:02 发布

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

我觉得正则表达式是一个好办法,但我喜欢我的列表到目前为止的简单,我还没有太深入的正则表达式。。在

我需要能够循环查看以下列表:

dat_list = ["Red_Ball","Yellow_Ball","Purple_Ball","Green_Ball"]

> "Red_Ball" in dat_list
    True

> "Purple_Turnip" in dat_list
    True

> "Beige_Sandwich" in dat_list
    False

我知道我也可以检查列表,但它不会检查通配符字符串,如“Purple_Turnip”。。在


Tags: infalsetrue列表greenredlistdat
1条回答
网友
1楼 · 发布于 2024-09-27 00:17:02

只需检查列表(或集合)中的成员身份是很简单的,但是如果您想根据模式筛选列表,您就无法(简单地)获得哈希表查找的性能优势,所以您不妨回到列表理解。在

[item for item in alist if re.match(expr, item)]

或者

^{pr2}$

甚至是

rx = re.compile(expr)
filter(rx.match, alist)

相关问题 更多 >

    热门问题