Funzioni dell`iteratore in Python | Set 2 (islice (), mappa stellare (), tee () ..)

| |

1. islice (iterable, start, stop, step) : — questo iteratore stampa selettivamente i valori a cui si fa riferimento nel suo contenitore iterabile passato come argomento. Questo iteratore accetta 4 argomenti, un contenitore iterativo, posizione iniziale, posizione finale e falcata.

2. mappa stellare (funz., Elenco di tuple) : — Questo iteratore prende una funzione e un elenco di tuple come argomento e restituisce un valore in base alla funzione da ciascuna tupla nell’elenco.

# Codice Python per dimostrare come funziona
# islice () e mappa stellare ()


# import & quot; itertools & quot; per le operazioni di iteratore

import itertools


# lista di inizializzazione

li = < codice classe = "semplice"> [ 2 , 4 , 5 , 7 , 8 , 10 , 20 ]


# inizializza l’elenco delle tuple

li1 = [( 1 , 10 , 5 ), ( 8 , 4 , 1 ), ( 5 , 4 , 9 ), ( 11 code> , 10 , 1 )]


# using islice ( ) per suddividere l’elenco in base a ... necessità
# inizia la stampa dal 2° indice al 6° skip 2

print ( "I valori dell’elenco in sezioni sono:" , fine = "")

print ( list (itertools.islice (li, 1 , 6 , 2 ) ))


# using starmap () per selezionare un valore acc. funzione
# seleziona il minimo di tutti i valori di tupla

print ( "I valori secondo la funzione sono:" , end codice> = "")

print ( list (itertools.starmap ( min , li1)))

Output:

 I valori dell’elenco a fette sono: [4, 7, 10] I valori acc. per funzionare sono: [1, 1, 4, 1] 

3. takewhile (func, iterable) : — questo iteratore è l’opposto di drop while (), stampa i valori finché la funzione non restituisce false la prima volta.

4. tee (iteratore, conteggio) : — Questo iteratore divide il contenitore in più iteratori menzionati nell’argomento.

# Codice Python per dimostrare come funziona
# takewhile() e tee()


# import & quot; itertools & quot; per le operazioni di iteratore

import itertools


# lista di inizializzazione

li = < codice classe = "semplice"> [ 2 , 4 , 6 , 7 , 8 , 10 , 20 ]


# salva l’elenco in un iteratore

iti = iter (li)


# using takewhile() per stampare i valori finché la condizione non è falsa.

print ( " I valori dell’elenco ​fino al 1° valore falso sono: " , end = " ")

print ( elenco (itertools.takewhile ( lambda x: x % 2 = = 0 , li)))


# using tee ( ) per elencare gli iteratori
# crea un elenco di 3 iteratori che hanno lo stesso valore.

it = itertools.tee (iti , 3 )


# stampa dei valori dell’iteratore

print ( "Gli iteratori sono:" )

for i in intervallo ( 0 , 3 ): < /p>

print ( elenco (it [i]))

Output:

I valori dell’elenco fino al 1° valore falso sono: [2, 4, 6] Gli iteratori sono: [2, 4, 6, 7, 8, 10, 20] [2, 4, 6, 7, 8, 10, 20] [2, 4, 6, 7 , 8, 10, 20]

5. zip_longest (iterable1, iterable2, fillval.) : &# 8212; questo iteratore stampa i valori degli iterabili uno alla volta . Se una delle iterazioni viene stampata completamente, i valori rimanenti vengono riempiti con i valori assegnati a fillvalue .

# Codice Python per dimostrare come funziona
# zip_longest()


# import & quot; itertools & quot; per le operazioni di iteratore

import itertools


# usando zip_longest() per combinare le due iterazioni.

print ( "I valori combinati ​​di iterabili è :" )

print ( * (itertools.zip_longest ( ’GesoGes’ , ’ ekfrek’ , fillvalue = ’_’ )))

Output:

 I valori combinati degli iterabili sono: (’G’,’ e’) (’e ’,’ k’) (’s’,’ f’) (’o’,’ r ’) (’ G’, ’e’) (’ e’, ’k’) (’ s’, ’_’ ) 

Iteratori combinatori

1. prodotto (iter1, iter2) : — Questo iteratore stampa il prodotto cartesiano dei due contenitori iterabili passati come argomenti.

2. permutazioni (iter, group_size) : — questo iteratore stampa tutte le possibili permutazioni di tutti gli elementi dell’iterabile. La dimensione di ogni gruppo di permutazione è determinata dall’argomento dimensione_gruppo .

# Python- codice demo
# product() e permutazione()


# import & quot; itertools & quot; per le operazioni di iteratore

import itertools


# using product() per stampare un prodotto cartesiano

print ( "Il prodotto cartesiano dei contenitori è:" )

print ( elenco (itertools.product ( ’AB’ , ’ 12’ )))


# usa le permutazioni per calcolare tutte le possibili permutazioni

print ( "Tutte le permutazioni del dato contenitore sono:" < codice classe = "semplice">)

print ( list (itertools.permutations ( ’GfG’ , 2 )))

Output:

 Il prodotto cartesiano dei contenitori è: [(’A’, ’1’), (’ A ’, ’2’), (’ B’, ’1’), (’ B’, ’2’)] Tutte le permutazioni del dato contenitore sono: [(’ G’, ’f’), (’ G ’, ’G’), (’ f’, ’G’), (’ f’, ’G’), (’ G’, ’G’), (’ G’, ’f’)] 

3. combinazioni (iterable, group_size) : — questo iteratore stampa tutte le possibili combinazioni (nessuna sostituzione) del contenitore passato in argomenti in la dimensione del gruppo specificata in ordine ordinato.

4. combinations_with_replacement (iterable, group_size) : — questo iteratore stampa tutte le possibili combinazioni (con sostituzione) del contenitore passato in argomenti in la dimensione del gruppo specificata in ordine ordinato.

# codice Python per dimostrare come funziona
# combination () e combination_with_replacement()


# import & quot; itertools & quot; per le operazioni di iteratore

import itertools


# usa le combinazioni () per stampare ogni combinazione
# (senza sostituzioni)

print ( "Tutta la combinazione di contenitori in ordine (senza sostituzione) è: " )

print ( elenco (itertools.combinations ( ’1234’ , 2 )))


# utilizzo di combination_with_replacement () per stampare ogni combinazione
# con sostituzione

print ( "Tutte le combinazioni di contenitori in ordine (con sostituzione ) è:" )

print ( elenco (itertools.combinations_with_replacement ( ’GfG’ , 2 )))

Output:

 Tutta la combinazione di container in ordine (senza sostituzione) è: [(’ 1’,’ 2 ’), (’ 1’, ’3’), (’ 1’, ’4’), (’ 2’, ’3’), (’ 2’, ’4’), (’ 3’, ’4 ’)] Tutte le combinazioni di contenitori in ordine (con sostituzione) sono: [(’ G’, ’G’), (’ G’, ’f’), (’ G’, ’G’ ’), (’ f’, ’f’), (’ f’, ’G’), (’ G’, ’G’)] 

Infinito iteratori

1. conteggio (inizio, passaggio) : — Questo iteratore inizia a stampare da "start" e stampa a tempo indeterminato . Se vengono menzionati i passaggi, i numeri vengono saltati, altrimenti il ​​passaggio è 1 per impostazione predefinita.

Esempio:

 iterator.count (5,2) stampe - 5,7,9,11 .. . infinitamente 

2. loop (iterabile) : — questo iteratore stampa tutti i valori in ordine dal contenitore passato. Riprende la stampa dall’inizio di nuovo quando tutti gli elementi sono stati ciclati .

Esempio:

 iterator.cycle ([1,2,3,4]) stampa - 1,2,3,4,1,2,3,4,1 . .. all’infinito 

3. ripeti (val, num) : — Questo iteratore stampa ripetutamente il valore passato un numero infinito di volte. Se viene menzionato un numero, sono fino a quel numero.

# codice Python per dimostrare come funziona
# repeat ()


# import & quot; itertools & quot; per le operazioni di iteratore

import itertools


# usando repeat() per stampare ripetutamente il numero

print ( "Stampa i numeri ripetutamente:" )

print ( list (itertools.repeat ( 25 , 4 )) )

Output:

 Stampa del numeri ripetutamente: [25, 25, 25, 25] 

Questo articolo per gentile concessione di Manjeet Singh . Se sei come Python.Engineering e desideri contribuire, puoi anche scrivere un articolo utilizzando contribuire.python.engineering o pubblicando un articolo contribuire @ python.engineering. Vedi il mio articolo che appare sulla homepage di Python.Engineering e aiuta altri geek.

Pubblica commenti se trovi qualcosa che non va o se desideri condividere maggiori informazioni sull’argomento discusso sopra.

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method