Erlang и Ruby имеют функции для выравнивания массивов. Похоже, такой простой и полезный инструмент для добавления в язык. Можно сделать это:
>>> mess = [[1, [2]], 3, [[[4, 5]], 6]]
>>> mess.flatten()
[1, 2, 3, 4, 5, 6]
Или даже:
>>> import itertools
>>> mess = [[1, [2]], 3, [[[4, 5]], 6]]
>>> list(itertools.flatten(mess))
[1, 2, 3, 4, 5, 6]
Вместо этого в Python приходится сталкиваться с проблемой написания функции для выравнивания массивов с нуля. Это кажется мне глупым, сглаживание массивов - это обычное дело. Это как написать пользовательскую функцию для объединения двух массивов.
Я прогуглил это бесполезно, поэтому я спрашиваю здесь; Есть ли конкретная причина, почему зрелый язык, такой как Python 3, который поставляется с сотнями тысяч различных батарей, не обеспечивает простой метод выравнивания массивов? Была ли идея включения такой функции обсуждена и отвергнута в какой-то момент?
extend
но сплющить было бы намного элегантнее. Тем не менее, я думаю, что этот шаблон достаточно распространен, чтобы оправдать сглаживание в стандартной библиотеке.