python - 验证列表的元素是否在字符串中

标签 python string list

验证列表的元素是否为字符串

我有一个关键词列表:

check_list  = ['aaa','bbb','ccc']

还有一组字符串:

test_string_1 = 'hellor world ccc'
test_string_2 = 'hellor world 2'

我想验证列表中的任何元素是否在字符串中

for key in check_list:
    if key in test_string_1:
        print 'True'

但不是打印值而是返回 True 或 False

所以我可以这样做:

if some_conditions or if_key_value_in_test_string:
    do something

最佳答案

如果我正确理解你想要什么,你可以这样做:

def test(check_list, test_string)
    for key in check_list:
        if key in test_string:
            return True
    return False

或者在一行中你可以这样做:

any([key in test_string for key in check_list])

或者使用生成器表达式,这对于长列表可能是有利的,因为它会短路(即,在第一个 True 处停止,而不首先构建完整列表):

any(key in test_string for key in check_list)

关于python - 验证列表的元素是否在字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38516973/

相关文章:

python - 在没有管理员权限的情况下安装 rpy2

python - 我该如何修复这个正则表达式? (nmap 结果)

java - 数数元音、辅音,并在字符串中打印它们的计数和乘积

html - 如何设置水平 <li> 之间的空间以使其恢复 100% 的页面

python - 列表中满足条件的元素序列

python - 如何使用 Altair 在散点图中突出显示标记?

python - 将用户配置文件添加到 request.user

python - 在python中删除字符串格式的负号

c - 学习C编程基础知识,可以消除我对数组和字符串的疑惑

python - 列出所有可能的随机 3 个字符或 4 个字符