Python查找含任一关键词的文本片段

如果我要在文本片段中查找是否含有多个关键词中的至少一个,代码如下:

keywords = ['美女','大长腿','翘臀']
string = '我:"前面那个美女,等一下,你有东西落在我这了",美女:"什么东西?",我:"你"'
string2 = '一键三连支持一下,拜托啦!'
print([i in string for i in keywords])
if any([i in string for i in keywords]):
    print(string)
print([i in string2 for i in keywords])
#不加方括号也行
if any(i in string2 for i in keywords):
    print(string2)
[True, False, False]
我:"前面那个美女,等一下,你有东西落在我这了",美女:"什么东西?",我:"你"
[False, False, False]

参考链接:https://www.runoob.com/python/python-func-any.html

Python any() 函数

描述

any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。

元素除了是 0、空、FALSE 外都算 TRUE。

函数等价于:

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False

Python 2.5 以上版本可用。

语法

以下是 any() 方法的语法:

any(iterable)

参数

  • iterable – 元组或列表。

返回值

如果都为空、0、false,则返回false,如果不都为空、0、false,则返回true。


实例

以下展示了使用 any() 方法的实例:

>>>any(['a', 'b', 'c', 'd'])  # 列表list,元素都不为空或0
True
 
>>> any(['a', 'b', '', 'd'])   # 列表list,存在一个为空的元素
True
 
>>> any([0, '', False])        # 列表list,元素全为0,'',false
False
 
>>> any(('a', 'b', 'c', 'd'))  # 元组tuple,元素都不为空或0
True
 
>>> any(('a', 'b', '', 'd'))   # 元组tuple,存在一个为空的元素
True
 
>>> any((0, '', False))        # 元组tuple,元素全为0,'',false
False
  
>>> any([]) # 空列表
False
 
>>> any(()) # 空元组
False
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tony的直播间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值