Я попробовал все (в моем знании) от разделения массива и объединить их вместе и даже при использовании itertools:Как преобразовать вложенный список в одномерный список в Python?
import itertools
def oneDArray(x):
return list(itertools.chain(*x))
Результат я хочу:
) print oneDArray([1,[2,2,2],4]) == [1,2,2,2,4]
Как ни странно, он работает для
b) print oneDArray([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) == [1, 2, 3, 4, 5, 6, 7, 8, 9]
Вопрос 1) Как я могу получить часть а работать так, как я хочу (любые намеки?)
Вопрос 2) Почему следующий код выше работы для части б и не пункт а ??
Возможный дубликат [Сплав (нерегулярный) список списков в Python] (http://stackoverflow.com/questions/2158395/flatten-an-irregular-list-of-lists-in-python) – TerryA
Я мог бы Я не нашел ответ, который я искал в SO, потому что ни один из моих результатов поиска не возвращал ничего о «сплющивании», но приведенные здесь ответы помогли прояснить многое! – compski