Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
4
Расширить функцию flatten для обработки вложенных list и tuple
Условие задачи
Необходимо улучшить функцию flat, чтобы она рекурсивно разворачивала любые вложенные списки и кортежи, собирая все элементы в единственный одномерный список.
mylist = [[1, 2, [3, [4, (5, (5.5, [5.8]))]]], 6, 7, 8]
def flat(arr, result=[]):
for a in arr:
if not isinstance(a, list):
result.append(a)
else:
flat(a, result)
return result
После доработки функция должна корректно обрабатывать как списки, так и кортежи, независимо от глубины вложения, и возвращать плоский список всех найденных элементов.