This feels luke a strawman example. I feel like list comprehension results in a much more readable example here. I think, at least.
> all(func3(a) for h,w in zip(a,b) for a in func1(h,w) if func2(a))
> all(func3(a) for h,w in zip(a,b) for a in func1(h,w) if func2(a))