我想找到一个优雅的方法,在另一个列表中找到一个列表,请查看下面的示例。谢谢!
al = ['aaa', 'bbb']
bl = ['aaabbb', 'cccc']
我想枚举al,然后如果al中的所有元素都包含在任何一个bl元素中,func返回True,否则返回False,下面是我的实现,我的问题是我可以在bl中移动 进入一行中的if语句?或者还有其他更好的方法吗?谢谢!
al = ['aaa', 'ddd']
bl = ['aaa', 'cccc', 'dddaaa']
for y in bl:
if all( x in y for x in al):
print 'exist'
break;
以上代码将输出存在
答案 0 :(得分:4)
将嵌套的生成器表达式与any
:
if any(all(x in y for x in al) for y in bl):
print 'exist'
答案 1 :(得分:0)
>>> flag=0
>>> for b in bl:
... for a in al:
... if a in b:
... flag=1
... else:
... flag=0
... if flag==1:
... print "exist"
... break
...
exist