使用any()在另一个字符串中搜索多个字符串

时间:2016-04-07 14:43:09

标签: python string any

我目前正在使用Python 3.4.2但是在尝试搜索另一个字符串中的多个字符串时没有得到预期的结果。

我创建了一个包含字符串格式类似于TEXT.NA [Y] ABC的项目的集合。我试图只捕获包含.NA,.SA或.EU的集合中的项目。

testset = set()
testset.add(('Blah','TEXT.NA[Y]ABC'))
testset.add(('Bleh','OTHER.AU[X]DEF'))
region = ['.NA', '.SA', '.EU']
for text,key in testset:
    if any(sym in region for sym in key):
        print(key)

我期待以上打印TEXT.NA [Y] ABC同时跳过OTHER.AU [X] DEF 想知道我在我的迭代中做错了什么。

谢谢!

1 个答案:

答案 0 :(得分:0)

您的会员资格检查错误。您需要检查region中的任何项目是否在key

>>> for text,key in testset:
...     if any(sym in key for sym in region):
...         print(key)
... 
TEXT.NA[Y]ABC