Differenza tra rendimento Python e rendimento Python

L'istruzione yield viene utilizzata per definire i generatori in Python. Quindi, prima di entrare in ciò che fa esattamente la resa, dobbiamo prima capire il concetto di generatori. I generatori hanno un ruolo significativo in Python e se ti addentri profondamente nella programmazione Python, è probabile che tu abbia già lavorato con i generatori Python. I generatori vengono utilizzati per creare iteratori in Python, ma con un approccio diverso.

I generatori Python sono funzioni che producono una sequenza di risultati e possono essere messi in pausa e ripresi dinamicamente. I generatori sono stati aggiunti per la prima volta come funzionalità opzionale in Python 2.2 e resi standard in Python 2.3. Sebbene fossero abbastanza potenti, le funzioni dei generatori sono state notevolmente migliorate in Python 2.5.



Quando i generatori sono stati aggiunti nuovamente in Python 2.2, è stata introdotta una nuova parola chiave 'yield' per compatibilità con le versioni precedenti, per la quale abbiamo dovuto importare i generatori dal modulo _future_ per poterli utilizzare. Questo è stato cambiato nella versione 2.3 di Python quando i generatori sono diventati standard e non era più necessario.



L'istruzione yield sospende l'esecuzione di una funzione e invia un valore al chiamante, mentre salva lo stato e successivamente riprende il significato dell'intero Generatore stesso può ancora essere ripreso dopo aver ottenuto il valore restituito. Un'istruzione return termina l'esecuzione della funzione e invia un valore al chiamante. Senza di esso, la tua funzione non restituisce nulla. Diamo una buona occhiata a quando usare yield e quando usare return in Python per capire meglio la differenza tra i due.



Cos'è Python Yield?

L'istruzione yield viene utilizzata nei generatori Python per sostituire il ritorno di una funzione per inviare un valore al suo chiamante senza distruggere le variabili locali. Per capire meglio quale ruolo gioca l'istruzione yield nella programmazione Python, devi capire cosa sono i generatori.

Le funzioni del generatore sono prodotte per definizione proprio come le funzioni normali, ma contengono un'istruzione 'yield'. Questo inizia con la parola chiave 'yield' che specifica l'oggetto generatore da restituire al chiamante. Un generatore è una funzione speciale in Python che restituisce un oggetto generatore al chiamante anziché un valore di dati. La parola chiave yield ha la capacità unica di interrompere l'esecuzione della funzione, salvare lo stato e riprenderla successivamente.



Cos'è Python Return?

L'istruzione return, a differenza dell'istruzione yield, esce da una funzione, restituendo un valore al suo chiamante. Le funzioni restituiscono un valore ai loro chiamanti e quelle di natura più procedurale non restituiscono nulla in modo esplicito. Sebbene una funzione possa avere più istruzioni di ritorno, solo una di esse può essere chiamata per ogni chiamata della funzione.

In genere, un'istruzione return viene visualizzata alla fine di una funzione bloccare per restituire il file finale risultato dell'esecuzione di tutte le istruzioni contenute in quella funzione. Tuttavia, potrebbe anche apparire prima nel blocco funzione per interrompere l'esecuzione di tutte le istruzioni successive in quel blocco. Ciò riprende immediatamente l'esecuzione del programma al chiamante. Quando non viene specificato alcun valore, il tipo di oggetto restituito equivalente in Python è 'Nessuno'.

Differenza tra rendimento e rendimento Python

  1. Nozioni di base relative a rendimento e rendimento di Python

    • L'istruzione yield viene utilizzata nei generatori Python per sostituire il ritorno di una funzione per inviare un valore al suo chiamante senza distruggere le variabili locali. Un generatore è una funzione speciale in Python che restituisce un oggetto generatore al chiamante anziché un valore di dati.
    • L'istruzione return, a differenza dell'istruzione yield, esce da una funzione, restituendo un valore al suo chiamante. Tipicamente, un'istruzione return appare alla fine di un blocco funzione per restituire il risultato finale dell'esecuzione di tutte le istruzioni contenute in quella funzione. Tutte le funzioni restituiscono un valore e se non è specificato alcun valore, restituirà 'Nessuno'.
  1. Generatori e funzioni in Python Yield and Return

    • L'istruzione yield è usata esplicitamente con i generatori Python. Sintatticamente, un generatore è una funzione con un'istruzione yield. Sebbene una funzione possa avere più istruzioni di ritorno, solo una di esse può essere chiamata per ogni chiamata della funzione.
    • A differenza di una funzione che restituisce solo una volta, i generatori possono interrompere l'esecuzione e produrre risultati intermedi. Ogni generatore è definito come una funzione, ma invece della parola chiave return, viene utilizzata la parola chiave yield all'interno del blocco funzione per indicare che il valore restituito è solo temporaneo e l'intero generatore può essere ripristinato anche dopo aver ottenuto il valore restituito.
  1. Esecuzione di rendimento e rendimento in Python

    • L'istruzione return termina l'esecuzione di una funzione e restituisce un valore al suo chiamante. Le funzioni restituiscono un valore ai loro chiamanti e quelle di natura più procedurale non restituiscono nulla in modo esplicito. Ciò che fondamentalmente fa è prendere l'uscita da una funzione e distruggere tutti i valori locali all'interno.
    • L'istruzione yield, d'altra parte, sostituisce il valore di ritorno di una funzione per sospenderne l'esecuzione e rimanda il valore al suo chiamante senza distruggere le variabili locali. Tuttavia, a differenza della funzione return, yield riprende l'esecuzione della funzione dal punto in cui era stata interrotta.

Resa vs rendimento Python: grafico di confronto

Sintesi di Resa e rendimento in Python

Sintatticamente, yield è una parola chiave che può essere utilizzata proprio come la parola chiave return, tranne per il fatto che l'istruzione return termina l'esecuzione della funzione e invia un valore al suo chiamante. La funzionalità dell'istruzione return consiste nel prendere input e restituire qualcosa al chiamante. A differenza di un return, l'istruzione yield viene esplicitamente utilizzata per definire i generatori, sostituendo il valore di ritorno di una funzione per sospenderne l'esecuzione mantenendo il locale variabili intatto, mentre l'istruzione return distrugge tutte le variabili locali all'interno.

Messaggi Popolari

Differenza tra ABC e ABM

ABC vs ABM ABC significa Activity Based Coasting e ABM significa Activity Based Management. Sia l'ABC che l'ABM sono strumenti di gestione che aiutano nella gestione degli affari

Differenza tra SAX e DOM

SAX vs. DOM Simple API for XML (nota anche come SAX) è un'API parser di accesso seriale per XML (ovvero un'API che ottiene dati e analizza il testo da

Erich Ludendorff: Tactical Genius, Strategic Fool

Il capo di stato maggiore tedesco Erich Ludendorff prolungò la prima guerra mondiale con le sue tattiche rivoluzionarie, ma a quale scopo? In un elenco di personaggi storici che se ne sono andati

Differenza tra elezioni e referendum

Elezioni vs referendum Elezioni e referendum sono parti diverse della governance. Un referendum può essere chiamato plebiscito o domanda di voto in cui il

Costruisci il tuo Grumman F6F-5 Hellcat

Durante l'operazione Dragoon, l'invasione della Francia meridionale nell'agosto 1944, i piloti dello squadrone di caccia di osservazione 1 (VOF-1), il guardiamarina Alfred Wood e il tenente (jg) Edward Olszewski, si alternarono volando sullo stesso Grumman F6F-5 Hellcat, abbattendo un totale di quattro aerei tedeschi.

Incontro: Churchill e Stalin Charm Truman

Mi sto preparando a vedere Stalin e Churchill, scrisse Harry Truman in una lettera a sua madre nel luglio 1945. Devo prendere il mio smoking, frac, negro