问题是写一个函数 matchAll(pattern, list),如果模式匹配列表中的所有字符串,则返回 True。
答案是:
import re
def matchAll(pattern,lst):
outlist=[(re.search(pattern, i) != None) for i in lst]
#out = True
#for i in outlist:
# out= i and out
return sum(outlist)==len(outlist)
除了最后一行,我理解他们所做的一切。为什么你必须检查列表的总和是否等于列表的长度?谢谢
请您参考如下方法:
outlist 是一个 bool 值列表。如果所有项都是True,则所有项的总和(True被强制为 1 和 False s 为 0) 将与列表的长度相同。
和做的一样:
return all(outlist)
