Each Answer to this Q is separated by one/two green lines.
I’m trying to do a simple test that returns
True if any of the results of a list are
None. However, I want
'' to not cause a return of
list_1 = [0, 1, None, 4] list_2 = [0, 1, 3, 4] any(list_1) is None >>>False any(list_2) is None >>>False
As you can see, the
any() function as it is isn’t being helpful in this context.
list objects can simply use a membership test:
None in list_1
any(), the membership test on a
list will scan all elements but short-circuit by returning as soon as a match is found.
None, so your
any(list_1) is None test is certainly not going anywhere. You’d have to pass in a generator expression for
any() to iterate over, instead:
any(elem is None for elem in list_1)
list_1 = [0, 1, None, 4] list_2 = [0, 1, 3, 4] any(x is None for x in list_1) >>>True any(x is None for x in list_2) >>>False