34 lines
496 B
Python
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)
|
|
|
|
|
|
|