Вопросы к Поиску с Алисой
Разница между функциями permutations и combinations в itertools заключается в том, что они решают разные задачи:
Таким образом, перестановки представляют все возможные порядки всех значений, а комбинации — все возможные выборы некоторых, ни одного или всех значений. inventwithpython.com
Для получения комбинаций с повторением или заменой можно вызвать функцию itertools.combinationswithreplacement. inventwithpython.com