def flat(lst, flat_lst = []):
"""делает список одномерным"""
for lexem in lst:
if not is_atom_(lexem):
flat(lexem, flat_lst)
else:
flat_lst.append(lexem)
return flat_lst
попытка 2 уходит в глубокую рекурсию…
def flat2(lst):
if (len(lst) == 1) and is_atom_(lst[0]):
return lst
else:
return flat2(lst[0:1]) + flat2(lst[1:])