Files
Zoetrope/zoetrope/utils.py
2021-09-15 15:29:10 +02:00

34 lines
496 B
Python

def unseq(seq):
return seq[0] if len(seq) == 1 else seq
#def flatten(obj):
# try:
# iter(obj)
# except TypeError:
# return [obj]
# else:
# res = []
# for i in obj:
# res.extend(flatten(i))
# return res
def flatten(obj):
return list(iflatten(obj))
def iflatten(obj):
try:
iterator = iter(obj)
except TypeError:
yield obj
else:
for item in iterator:
yield from iflatten(item)