使用 any() 在另一个字符串中搜索多个字符串
Searching for Multiple Strings within another String using 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)
我期待上面的内容在跳过 OTHER.AU[X]DEF 时打印 TEXT.NA[Y]ABC
想知道我在我的 iterable 中做错了什么。
谢谢!
您的会员检查有误。您需要检查 region
中的任何项目是否在 key
:
中
>>> for text,key in testset:
... if any(sym in key for sym in region):
... print(key)
...
TEXT.NA[Y]ABC
我目前正在使用 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)
我期待上面的内容在跳过 OTHER.AU[X]DEF 时打印 TEXT.NA[Y]ABC 想知道我在我的 iterable 中做错了什么。
谢谢!
您的会员检查有误。您需要检查 region
中的任何项目是否在 key
:
>>> for text,key in testset:
... if any(sym in key for sym in region):
... print(key)
...
TEXT.NA[Y]ABC