Python判断一个字符串中是否存在多个子串中的一个
在使用python的开发过程中,常常需要判断,字符串中是否存在子串的问题,但判断一个字符串中是否存在多个字串中的一个时,如if (a or b) in c
或者if x contains a|b|c|d…
,似乎就需要借助for
做循环判断,那么这种情况有没有更pythonic的方法呢?
判断一个字符串中是否存在某一个子串
判断一个字符串中是否存在子串通常使用in
关键词,如下:
1 | "I Love Crystal!And I Hate Tom!" a = |
in关键词可以用来判断一个字符串中是否含有一个子串,如"Crystal"
在"I Love Crystal!And I Hate Tom!"
中,"Jessie"
不在"I Love Crystal!And I Hate Tom!"
中。
判断一个字符中是否含有多个子串中的一个
问题来了,如果如果我想判断"I Love Crystal!And I Hate Tom!"
是否含有"Crystal", "Tom", "Jessie"
中的任意一个,只要有其中的任意一个就输出True
,应该怎么判断呢?
1 | "I Love Crystal!And I Hate Tom!" a = |
我们发现,代码结构看起来还是不够pythonic,有没有更加优雅的写法呢?可以使用内置的any()
函数。
1 | "I Love Crystal!And I Hate Tom!" a = |
参考链接:https://www.jianshu.com/p/da382b11dc3e
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 竹山一叶!
评论