I\'m looking for a way to easily determine if all not None items in a list occur in a single continuous slice. I\'ll use integers as examples of not None items
You could use something like itertools.groupby
:
from itertools import groupby
def are_continuous(items):
saw_group = False
for group, values in groupby(items, lambda i: i is not None):
if group:
if saw_group:
return False
else:
saw_group = True
return True
This will iterate only until it sees a group twice. I'm not sure if you consider [None, None]
, so tweak it to your needs.