我有很多字符串集,希望根据子串集测试它们。我希望确定哪些集合包含所有子字符串。
set1 = {'A123', 'B234', 'C345'}
set2 = {'A123', 'F234', 'H345'}
substring_set1 = {'A', 'B'}
在伪代码中是这样的:
all(substring_set1.areSubstrings(set1))
True
all(substring_set1.areSubstrings(set2)
False
或者类似的东西可能吗?
if all(x in v for v in set1 for x in substring_set1):
do stuff
我想我可以通过一系列for循环来解决它,但我觉得可能有一种更清洁的方法。有什么建议?谢谢!
答案 0 :(得分:3)
以下方法对我来说看起来很干净:
>>> all(any(x in v for v in set1) for x in substring_set1)
True
>>> all(any(x in v for v in set2) for x in substring_set1)
False