В Python я пытаюсь добавить все различные комбинации элементов в список N
списков, где N
- это переменная. В частности, я работаю со списком, содержащим N копий списка [1, 2, 3, 4, 5, 6]
.Сумма всей возможной комбинации элементов в списке
Итак, давайте предположим, что N = 3
. Я хочу, чтобы цикл через первый список, добавив:
6 + 6 + 6
5 + 6 + 6
...
1 + 6 + 6`
затем увеличивает второй парень один раз и начать добавлять:
6 + 5 + 6
5 + 5 + 6
...
1 + 1 + 1 # ultimately to
после я, конечно, увеличиваю третий парень. Этот конкретный пример можно сделать с помощью трех вложенных циклов, но, конечно, мне нужно изменить число циклов. Я искал в Интернете и этот форум ответы и не мог понять, что я должен делать. Люди говорили использовать рекурсивные функции, но я даже не слышал об этом, пока не посмотрел. Так что это трудно понять.
Что вы пробовали, вы можете показать нам свои попытки? Может быть, мы сможем помочь вам исправить их. – MooingRawr
SO не является ни кодовым письмом, ни учебным сервисом. Обзор [ask]. – jonrsharpe
Используйте ['itertools.product'] (https://docs.python.org/3/library/itertools.html#itertools.product). 'list (map (sum, product ([1,2,3,4,5,6], repeat = n)))' –