Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Utilizzo degli iteratori incorporati | Python Iterators
Concetti di Programmazione Funzionale in Python

bookUtilizzo degli iteratori incorporati

Scorri per mostrare il menu

Python offre diversi iteratori incorporati che permettono di elaborare collezioni in modo espressivo ed efficiente in termini di memoria. Tre dei più utilizzati sono enumerate, zip e map.

  • enumerate consente di iterare su una sequenza mantenendo traccia sia dell'indice che del valore di ogni elemento;
  • zip permette di iterare su più sequenze in parallelo, accoppiando gli elementi;
  • Ricorda che map è una funzione di ordine superiore, un concetto già utilizzato in precedenza per applicare operazioni ai dati. Qui, si riconsidera questo strumento attraverso il protocollo degli iteratori. Invece di vederlo semplicemente come un modo per elaborare una lista, ora lo si interpreta come un oggetto specializzato che produce risultati su richiesta, trasformando la comprensione di map da uno strumento funzionale statico a un flusso dinamico ed efficiente in termini di memoria.

Questi iteratori sono preziosi per attività come l'elaborazione di liste parallele, la trasformazione dei dati e la scrittura di cicli concisi. Come mostrato nel video, un uso corretto può semplificare il codice e ridurre gli errori, soprattutto quando si lavora con insiemi di dati grandi o complessi.

123456
# Using enumerate and zip to process two lists in parallel names = ["Alice", "Bob", "Charlie"] scores = [85, 92, 78] for idx, (name, score) in enumerate(zip(names, scores), start=1): print(f"{idx}. {name} scored {score}")
copy

In questo esempio, zip(names, scores) accoppia ogni nome con il relativo punteggio, creando un iteratore di tuple come ("Alice", 85). L'utilizzo di enumerate aggiunge un contatore che parte da 1, così ogni iterazione fornisce indice, nome e punteggio. Il ciclo stampa il nome e il punteggio di ogni studente, preceduti dalla loro posizione nella lista. Questo approccio è sia conciso che leggibile, e dimostra come gli iteratori incorporati semplifichino il lavoro con più sequenze.

question mark

Qual è lo scopo principale dell'utilizzo di enumerate insieme a zip in questo esempio di codice?

Seleziona la risposta corretta

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 5. Capitolo 1

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Sezione 5. Capitolo 1
some-alt