Immergiti in Queue Module in Python: è più di FIFO

Blog

Queue è una struttura dati molto pratica. Normalmente viene confrontato con pila , Vettore , lista collegata, e altro strutture dati lineari . Ciò che rende una struttura lineare diversa da un'altra è dove si verificano aggiunte e rimozioni.



La struttura dei dati della coda ha tre tipi: FIFO, LIFO , e Coda prioritaria . Il modulo coda in Python implementa tutti questi tipi. Inoltre, è estremamente utile in programmazione di thread inoltre, il che rende questo modulo ancora più brillante.






In questo articolo, ti aiuterò prima ad aggiornare le conoscenze sulle strutture dati e ad imparare come usare il modulo |_+_|. Poi ti mostrerò come usare |_+_| per risolvere 2 diversi problemi di multi-threading. Alla fine, parlerò dei pro e dei contro di questo modulo.



Strutture dati

Prima di passare ad alcune delle funzionalità avanzate, parliamo un po' della struttura dei dati della coda e impariamo come utilizzare il modulo per creare una coda semplice.



FIFO — Primo a entrare, primo a uscire






Questo è il tipo base di coda. Gli elementi inseriti per primi verranno rimossi per primi, il che funziona come una lista d'attesa nel mondo reale. Prima verrai aggiunto alla lista, prima riceverai il biglietto per il concerto.

Il modulo Python fornisce |_+_| e |_+_| che implementa una coda FIFO. |_+_| è una nuova funzionalità in Python 3.7. Ci sono 2 differenze tra loro:

  1. |_+_| non esegue il monitoraggio delle attività nella programmazione dei thread. La programmazione dei thread sarà discussa in seguito.
  2. |_+_| è una coda FIFO illimitata mentre |_+_| può avere un limite superiore. In entrambe le classi, se la coda è vuota, |_+_| l'operazione sarà bloccata fino all'inserimento di nuovi elementi. In |_+_|, se la coda è piena, |_+_| anche l'operazione verrà bloccata fino alla rimozione degli elementi. Questo non accadrà mai a |_+_|. Secondo Documento Python , è possibile disabilitare il blocco utilizzando |_+_| in entrambi |_+_| e |_+_|, riceverai un |_+_| e |_+_| eccezione immediatamente.

#machine-learning #programmazione #data-science #software-development #python

versodatascience.com

Immergiti in Queue Module in Python: è più di FIFO

Per prima cosa ti aiuterò ad aggiornare le conoscenze sulle strutture dati e ad imparare come usare la coda del modulo. Quindi ti mostrerò come utilizzare la coda per risolvere 2 diversi problemi di multi-threading. Alla fine, parlerò dei pro e dei contro di questo modulo.