Erlang e Ruby vêm com funções para achatar matrizes. Parece uma ferramenta tão simples e útil para adicionar a um idioma. Pode-se fazer isso:
>>> mess = [[1, [2]], 3, [[[4, 5]], 6]]
>>> mess.flatten()
[1, 2, 3, 4, 5, 6]
Ou até:
>>> import itertools
>>> mess = [[1, [2]], 3, [[[4, 5]], 6]]
>>> list(itertools.flatten(mess))
[1, 2, 3, 4, 5, 6]
Em vez disso, no Python, é preciso passar pelo trabalho de escrever uma função para achatar matrizes do zero. Isso me parece bobo, achatar matrizes é uma coisa tão comum a se fazer. É como ter que escrever uma função personalizada para concatenar duas matrizes.
Eu pesquisei isso no Google sem frutos, então estou perguntando aqui; existe uma razão específica para uma linguagem madura como o Python 3, que vem com centenas de milhares de baterias incluídas, não fornecer um método simples de achatar matrizes? A ideia de incluir tal função foi discutida e rejeitada em algum momento?
extend
mas achatar teria sido muito mais elegante. No entanto, pergunto se esse padrão é comum o suficiente para justificar o achatamento na biblioteca padrão.