Моему вопросу может быть довольно сложно объяснить (возможно, это также причина, по которой я не нашел решения или аналогичной проблемы).python - объединить элементы списка всеми возможными способами
У меня есть список с некоторыми элементами (в моем конкретном случае также перечислены). Я хочу иметь все возможные комбинации конкатенаций этого списка в том же порядке.
Например:
[[1], [2], [3], [4]] # what I have
{ # what I want
[[1], [2], [3], [4]],
[[1, 2], [3], [4]],
[[1], [2, 3], [4]],
[[1], [2], [3, 4]],
[[1, 2], [3, 4]], # Update 1
[[1, 2, 3], [4]],
[[1], [2, 3, 4]],
[[1, 2, 3, 4]]
}
В целом длина подсписков больше, затем 1; также сам список может содержать более 4 элементов.
Любая помощь очень ценится.
UPDATE 1: не использовался недостающий комбинация в коде.
itertools.combinations – Praveen
Что случилось с '[[1, 2], [3, 4]]'? – TigerhawkT3
@ TigerhawkT3 У меня была такая же мысль. В общем случае количество результирующих списков должно быть всегда равным двум, если я правильно понимаю проблему (это должно быть 2 ** (n-1), где n - исходная длина списка). –