set Python

|

Spesso, quando lavori con i dati, vorrai memorizzare un elenco di dati che non possono contenere valori duplicati e i cui valori non possono essere modificati. Ad esempio, se stai creando un elenco di ID di acquisto in un negozio di alimentari, vorrai che ogni ID sia univoco e non vorrai che nessuno possa modificare i valori nel tuo elenco.

è qui che entra in gioco l’oggetto set Python. Un set è una raccolta non ordinata di elementi che può contenere solo valori univoci.

Questo tutorial discuterà, con riferimento agli esempi, le basi dei set Python e come eseguire operazioni comuni come l’aggiunta e la rimozione di valori su un set.

Set Python

La struttura dei dati del set predefinita di Python è simile all’idea di insiemi in matematica.

Gli insiemi Python possono contenere zero o più elementi e non esiste un ordine definito per ciascun elemento nell’insieme. Ogni elemento memorizzato all’interno di un set è unico, quindi non possono esistere duplicati e ogni singolo valore nel set non può essere modificato.

Sebbene i singoli valori in un set non possano essere modificati, il set stesso può essere. Ciò significa che possiamo aggiungere o rimuovere elementi dal nostro set.

La struttura del set è utile perché include una serie di operazioni matematiche che possiamo usare per lavorare con i dati che abbiamo memorizzato in un insieme.

Crea un insieme Python

In Python, gli insiemi sono definiti come un elenco di elementi (o "elementi") separati da virgole. L’elenco viene quindi racchiuso tra parentesi graffe ({}).

L’81% dei partecipanti ha dichiarato di sentirsi più sicuro delle proprie prospettive di lavoro nel settore tecnologico dopo aver frequentato un bootcamp. Fatti abbinare a un bootcamp oggi.

Il laureato medio del bootcamp ha trascorso meno di sei mesi nella transizione di carriera, dall’inizio di un bootcamp alla ricerca del primo lavoro.

I set Python possono memorizzare qualsiasi numero di elementi e ogni elemento all’interno di un set può utilizzare diversi tipi di dati. Quindi, un insieme può memorizzare sia un intero che una stringa, oppure una stringa, un float e una tupla. Tuttavia, i set non possono memorizzare tipi di dati modificabili, come un altro set, un dizionario o un elenco.

Supponiamo di voler creare un set che memorizzi un elenco di compiti a casa che uno studente ha consegnato per una lezione di inglese. Potremmo creare questo set utilizzando il seguente codice:

Il nostro codice restituisce:

{‘Foglio di lavoro n. 5", "Foglio di lavoro n. 4", "Foglio di lavoro n. 7", "Revisione di fine argomento n. 2"}

Nel nostro codice, abbiamo definito un set chiamato assignments che ha quattro valori. Quindi, abbiamo stampato il contenuto dell’assegnazione impostata sulla console. Puoi vedere che i nostri valori vengono restituiti in un ordine casuale perché i set non memorizzano i loro articoli in un ordine particolare.

Modifica di un set

Una volta creato un set, non è possibile modificare i valori degli elementi del set, ma è possibile aggiungere elementi e rimuovi elementi da un insieme.

Aggiungi elementi a un insieme

Per aggiungere un elemento a un insieme Python, puoi usare add() metodo. Supponiamo che uno studente abbia appena consegnato il Foglio di lavoro n. 8 e che desideriamo aggiornare il nostro set per tenere traccia del compito dello studente consegnato. Potremmo farlo utilizzando questo codice:

Il nostro codice restituisce:

{‘Worksheet #8", ‘Worksheet #4’, ‘Worksheet #5’, ‘Esame di fine argomento #2’, ‘Worksheet #7’}

Come puoi vedere, il Worksheet #8 è stato aggiunto al nostro set.

Inoltre, se desideri aggiungere più elementi a un set, puoi utilizzare update() metodo. Il metodo update() accetta un elenco di elementi a cui si desidera aggiungere un set come parametro, quindi aggiunge tali elementi a un set.

Supponiamo che un lo studente ha consegnato entrambi i fogli di lavoro #8 e #9. Potremmo cambiare il nostro set per riflettere questi nuovi incarichi che vengono consegnati usando questo codice:

Il nostro codice restituisce:

{‘Foglio di lavoro n.9", ‘Esame di fine argomento n.2’, ‘Foglio di lavoro n.8’, ‘Foglio di lavoro n. 7", "Foglio di lavoro n. 4" e "Foglio di lavoro n. 5"}

Ora il nostro set contiene due nuovi valori: Foglio di lavoro n. 8 e Foglio di lavoro n.9.

Rimuovi elementi da un insieme

Per rimuovere un elemento da un insieme, puoi usare discard() o remove().

La funzione discard() rimuove un elemento da un insieme e non restituisce nulla se un elemento non esiste in un insieme. La funzione remove() tenterà di rimuovere un elemento da un insieme e, se quell’elemento non esiste, verrà generato un errore.

Supponiamo di voler rimuovi il Foglio di lavoro n. 9 dal nostro registro dei compiti a casa di uno studente perché gli è stato chiesto di rifare il compito. Potremmo farlo usando questo codice:

"Il Karma di carriera è entrato nella mia vita quando ne avevo più bisogno e mi ha aiutato rapidamente ad abbinarmi a un bootcamp. Due mesi dopo la laurea, ho trovato il lavoro dei miei sogni che si allineava con i miei valori e obiettivi nella vita!"

Venus, Software Engineer presso Rockbot

Il nostro codice restituisce:

{‘Esame di fine argomento n. 2", "Foglio di lavoro n. 5", "Foglio di lavoro n. 4", "Foglio di lavoro n. 8", "Foglio di lavoro n. 7"}

Puoi vedere che il valore Worksheet #9 è stato rimosso dal nostro set. Ci siamo riusciti usando il metodo discard().

Cancella un set

Per cancellare un set, puoi usare il clear () metodo. Supponiamo di voler cancellare un record dei compiti di uno studente perché è la fine dell’anno e non abbiamo più bisogno di memorizzare le informazioni. Potremmo farlo usando questo codice:

Il nostro codice restituisce: {}. Questo riflette il nostro set vuoto.

Restituisci la lunghezza di un set

Per scoprire quanti elementi sono memorizzati in un set, puoi usare il len() metodo.

Supponiamo di voler scoprire quanti compiti a casa ha consegnato uno studente. Potremmo farlo usando questo codice:

Il nostro codice restituisce: 6. Nel nostro codice, prima dichiariamo un set chiamato assignments. Quindi, usiamo il metodo len() per scoprire quanti elementi sono memorizzati nel set assignments.

Python Operazioni sugli insiemi

Uno dei vantaggi dell’utilizzo di un insieme per memorizzare i dati è che gli insiemi supportano gli insiemi matematici operazioni. Vediamo come funzionano tre delle principali operazioni sugli insiemi.

Queste operazioni sugli insiemi non modificano il contenuto di un insieme. Invece, eseguono un calcolo su un insieme esistente.

Set Union

Il metodo union() ci consente di creare un insieme di tutti elementi da due insiemi.

Supponiamo di avere due elenchi di compiti di uno studente che vogliamo unire. Un elenco contiene i dati sui compiti di uno studente e l’altro contiene un elenco dei compiti che lo studente ha completato. Potremmo unire questi elenchi utilizzando questo codice:

Il nostro il codice restituisce:

{‘Foglio di lavoro #7’, ‘Essay #2’, ‘Worksheet #4’, ‘Essay #1’, ‘Worksheet #5’}< br>

Nel nostro codice, usiamo il metodo union() per unire i nostri due insiemi. Assegniamo il valore del set appena unito alla variabile homework. Quindi, abbiamo stampato il valore della variabile homework.

In alternativa, avremmo potuto utilizzare il seguente codice:

Il "|" L’operatore esegue un’operazione sugli insiemi di unione. Il nostro codice restituisce un insieme unito:

{‘Essay #2’, ‘Worksheet #4’, ‘Worksheet #5’, ‘Essay #1’, ‘Worksheet # 7’}

Imposta intersezione

Il metodo intersection() consente di generare un elenco di elementi comuni tra due insiemi.< br>

Supponiamo di avere un elenco di saggi consegnati da uno studente e un elenco di saggi che sono stati pubblicati. Se volessimo sapere quali temi uno studente non ha ancora consegnato, potremmo eseguire un metodo di intersezione.

Ecco il codice che useremmo:

Il nostro codice restituisce:

{‘Essay #1’, ‘Essay #2’}

In questo esempio , usiamo il metodo intersection() per trovare tutti gli elementi che esistono in entrambi gli insiemi essays_handed_in e essays_issued. Assegniamo il risultato dell’intersezione operazione alla variabile due, che poi stampiamo sulla console.

Inoltre, possiamo usare l’operatore & per eseguire un’operazione di intersezione di un insieme. Quindi, se volessimo eseguire un’intersezione sui nostri due insiemi da in precedenza, potremmo usare questo codice:

Il nostro codice restituisce:

{‘Essay #1’, ‘Essay #2’}

Imposta Differenza

Il metodo difference() ti permette di scoprire quali elementi sono presenti in un insieme che non sono presenti in un altro insieme.

Supponiamo di voler generare un elenco di tutti i compiti che uno studente ha consegnato e che non sono stati ancora valutati. Potremmo farlo usando questo codice:

Il nostro codice restituisce:

{"Essay #2"}

In questo codice, abbiamo usato il metodo difference() per trovare la differenza tra essays_handed_in e essays_graded set. In alternativa, potremmo usare l’operatore -, in questo modo:

Il nostro codice restituisce:

{"Essay #2"}

Lo stesso risultato viene restituito nel nostro codice. Ma invece di utilizzare il metodo difference() set, abbiamo utilizzato l’operatore -, che esegue un controllo per trovare la differenza tra due insiemi.

Conclusione

La struttura dei dati dell’insieme Python consente di memorizzare raccolte non ordinate di elementi.

Ogni elemento in un insieme deve essere unico, quindi non possono esistere duplicati, e il contenuto di un set non può essere modificato una volta aggiunto al set.

Questo tutorial ha discusso, con riferimento ad esempi, le basi degli insiemi Python e le principali operazioni offerte dagli insiemi.< br>

Abbiamo solo scalfito la superficie di ciò che puoi fare con i set, anche se c’è ancora molto da esplorare per te, ma abbiamo coperto le principali abilità che devi conoscere per lavorare efficacemente con i set . Ora sei pronto per iniziare a utilizzare il metodo set() di Python come un professionista!


Python viene utilizzato negli ambienti di sviluppo professionale in tutto il mondo per tutto, dall’analisi dei dati allo sviluppo web. Scarica l’app Python.Engineering gratuita oggi per saperne di più sui percorsi di carriera nella programmazione Python.