Различия permutations и combinations

При первом знакомстве со встроенными методами языка python часто возникает вопрос чем отличаются permutations и combinations? Когда стоит исполь зовать одно, а когда другое?

Главное отличие заключаются в способе создания комбинаций:

1. permutations(iterable, r):
  – permutations генерирует все возможные перестановки элементов из итерируемого объекта iterable длиной r.
  – Элементы в каждой перестановке могут встречаться в разных порядках.
  – Например, если iterable = [1, 2, 3], и r = 2, то будут сгенерированы следующие перестановки: (1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2).

2. combinations(iterable, r):
  – combinations генерирует все возможные комбинации элементов из итерируемого объекта iterable длиной r.
  – Комбинации содержат элементы в исходном порядке.
  – Например, если iterable = [1, 2, 3], и r = 2, то будут сгенерированы следующие комбинации: (1, 2), (1, 3), (2, 3).

Таким образом, если вам нужно перебрать все возможные комбинации без сохранения порядка элементов – воспользуйтесь permutations(). Если же порядок важен – combinations().

Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии