freeCodeCamp/guide/portuguese/python/itertools/index.md

51 lines
1.9 KiB
Markdown
Raw Normal View History

---
title: Itertools
localeTitle: Itertools
---
Itertools é um módulo python de funções que retorna geradores, objetos que só funcionam quando são iterados. Alguns exemplos de funções itertool incluem, mas não se limitam a: chain (), imap (), product () e compress ().
### cadeia()
A função chain () toma vários iteradores como argumentos e retorna um único iterador que produz o conteúdo de todos eles como se eles viessem de uma sequência.
```py
import itertools
list(itertools.chain([1, 2], [3, 4]))
# Output
# [1, 2, 3, 4]
```
### islice ()
A função islice () retorna um iterador que retorna itens selecionados do iterador de entrada, por índice. Leva os mesmos argumentos que o operador de fatia para listas: iniciar, parar e passo. Iniciar e parar são opcionais.
```py
import itertools
list(itertools.islice(count(), 5))
# Output
# [0,1, 2, 3, 4]
```
### izip ()
izip () retorna um iterador que combina os elementos de vários iteradores em tuplas. Ele funciona como a função interna zip (), exceto pelo fato de retornar um iterador ao invés de uma lista.
```py
import itertools
list(izip([1, 2, 3], ['a', 'b', 'c']))
# Output
# [(1, 'a'),(2, 'b'),(3, 'c')]
```
Iteradores combinatórios:
Resultados dos Argumentos do Iterador produto () p, q,… \[repeat = 1\] produto cartesiano, equivalente a um loop for aninhado permutações () p \[, r\] tuplas de comprimento r, todas as ordenações possíveis, sem elementos repetidos combinações () p, r tuplas de comprimento r, em ordem de classificação, sem elementos repetidos combinações _com_ tuplas de substituição () p, r r-length, em ordem de classificação, com elementos repetidos produto ('ABCD', repetir = 2) AA AB AC AD BA BB BC BD CA CD CC CD DA DB DC DD permutações ('ABCD', 2).
combinações ('ABCD', 2) AB AC DC AD BD CD
combinações _com_ substituição ('ABCD', 2) AA AB AC DC BB BC BD CC CD DD
Fonte: https://docs.python.org/3/library/itertools.html