Рубрики
Без рубрики

Python Itertools — Цепочка, Отзыв и Izip объяснили примерами

Автор оригинала: FreeCodeCapm Team.

Itertools – это модуль Python функций, которые возвращают генераторы, которые являются объектами, которые функционируют только при итерации.

цепь()

цепь () Функция принимает несколько итераторов в качестве аргументов. Он проходит через каждый элемент каждого переданного, затем возвращает один итератор с содержимым всех пропущенных итераторов.

import itertools
list(itertools.chain([1, 2], [3, 4]))

# Output
# [1, 2, 3, 4]

islice ()

islice () Функция возвращает определенные элементы из пропущенного итератора.

Требуется те же аргументы, что и ломтик () Оператор для списков: запуск, остановка и шаг. Запуск и остановка необязательна.

import itertools
list(itertools.islice(count(), 5))

# Output
# [0, 1, 2, 3, 4]

izip ()

izip () Возвращает итератор, который сочетает в себе элементы пропущенных итераторов на кортежи.

Это работает аналогично zip () , но возвращает итератор вместо списка.

import itertools
list(izip([1, 2, 3], ['a', 'b', 'c']))

# Output
# [(1, 'a'),(2, 'b'),(3, 'c')]

Больше информации:

  • Узнайте анализ данных с Python – бесплатный 4-часовой курс
  • Многопоточивый Python: Sliptering через узкое место ввода/вывода?