有一个包含n个元素的列表,如何检查每对元素是否满足条件?
example = ["aabbcc","bca","bc"]
for item in example:
# check code here
我基本上想知道“ aabbcc”的所有字符是否都在“ bca”中,那么“ bca”在“ bc”中,而“ aabbcc”在“ bc”中。
在列表中始终包含三个元素很容易,但是如何测试具有列表的所有对,例如包含15个元素?
有一个包含n个元素的列表,如何检查每对元素是否满足条件?
example = ["aabbcc","bca","bc"]
for item in example:
# check code here
我基本上想知道“ aabbcc”的所有字符是否都在“ bca”中,那么“ bca”在“ bc”中,而“ aabbcc”在“ bc”中。
在列表中始终包含三个元素很容易,但是如何测试具有列表的所有对,例如包含15个元素?
您可以使用set.issubset
,而成对配方可以使用itertools.tee
,但是map
不能工作,因为它不能解压缩参数,但是itertools.starmap
可以。
>>> example = ["aabbcc","bca","bc"]
>>> s,s1 = tee(map(set,example)); next(s1,None)
>>> list(starmap(set.issubset,zip(s,s1)))
[True,False]
>>> all(starmap(set.issubset,s1)))
False