Счетчик просмотров74

БИБЛИОТЕКА ITERTOOLS

Оглавление
productpermutationsВажное замечание

itertools — это стандартная библиотека Python, содержащая набор быстрых, экономичных по памяти инструментов для создания итераторов. Особенно нужны функции product и permutations. Их часто путают, но они решают разные задачи.Данная библиотека может быть использована в простых задачах ЕГЭ (особенно в номер 8)

product

Основные характеристики:

1. Что делает: Создает упорядоченные пары/кортежи, где первый элемент берется из первого набора, второй — из второго, и так далее.

2. Размещение с повторениями: Если нужно умножить объект сам на себя, используется аргумент repeat (например, product(A, repeat=3) равно product(A, A, A)).

3. Эффективность: Элементы генерируются лениво (lazy evaluation), а не хранятся все сразу.

4. Результат: Функция возвращает итератор, что экономит память.

Пример: создание всех возможных комбинаций при подкидывании монетки 3 раза (0 – орёл, 1 – решка)

PYTHON-КОД
1
2
3
4
5
6
Баннер статьи

permutations

Основные характеристики:

1. Уникальность позиций: Элементы считаются уникальными по их положению, а не значению. Если во входных данных есть дубликаты, перестановки будут повторяться.

2. Длина перестановки: Если количество повторений не указано, длина равна длине исходной последовательности.

3. Лексикографический порядок: Если входной список отсортирован, все перестановки генерируются в отсортированном порядке.

4. Результат: Функция возвращает итератор, что экономит память.

Пример: создание всех вариаций перестановок длины 2 первых трёх букв английского алфавита

PYTHON-КОД
1
2
3
4
5
6

Важное замечание

Если написать print(product(...)) или print(permutations(...)) без оборачивания в list(), выведется объект класса itertools. Поэтому результат нужно дополнительно оборачивать в список

Оцените статью

Другие статьи по предмету

Другие статьи не найдены