Set in Python

I set in Python sono collezioni di elementi non ordinati e univoci. Questo significa che:

  • Non puoi accedere agli elementi tramite indice.
  • Ogni elemento può comparire una sola volta.
  • Gli elementi non seguono un ordine specifico.

Come creare un set in Python

Per creare un set in Python puoi utilizzare le parentesi graffe oppure la funzione set().

numeri = {1, 2, 3, 4}
nomi = set(["Anna", "Luca", "Marco"])

Attenzione: per creare un set vuoto devi usare set() e non le parentesi graffe, altrimenti otterrai un dizionario.

Come accedere agli elementi di un set

Essendo una struttura non ordinata, non puoi usare gli indici come con le liste. Per visualizzare gli elementi di un set puoi usare un ciclo:

for elemento in nomi
{
    print(elemento)
}

Come aggiungere e rimuovere elementi da un set

Puoi aggiungere un elemento con add():

nomi.add("Giulia")

Per rimuovere un elemento puoi usare remove() o discard():

nomi.remove("Anna")   // Lancia un errore se "Anna" non esiste
nomi.discard("Anna")  // Non lancia errore

Quali operazioni puoi fare sui set

I set supportano operazioni matematiche come unione, intersezione e differenza.

Come usare le operazioni tra set

A = {1, 2, 3}
B = {3, 4, 5}

unione = A.union(B)         // {1, 2, 3, 4, 5}
intersezione = A.intersection(B) // {3}
differenza = A.difference(B)     // {1, 2}

Come scorrere gli elementi di un set

Puoi iterare facilmente un set con un ciclo for, ad esempio per stampare tutti gli elementi:

for numero in numeri
{
    print(numero)
}

Funzioni e metodi utili dei set

Alcuni metodi utili da conoscere sono:

  • clear() – Svuota il set.
  • copy() – Restituisce una copia del set.
  • pop() – Rimuove e restituisce un elemento casuale.
  • update() – Aggiunge più elementi da un’altra collezione.

Perché usare i set in Python

I set sono particolarmente utili quando vuoi:

  • Rimuovere duplicati da una lista.
  • Confrontare collezioni di dati.
  • Eseguire operazioni matematiche sugli insiemi.

Corsi correlati

In Arrivo

Design Pattern per videogiochi

I Design Pattern sono soluzioni a problemi comuni che si incontrano nello sviluppo del software. Nel contesto dei videogiochi, questi pattern possono aiutare a gestire la complessità crescente dei giochi moderni. Sei appassionato di videogiochi? Hai mai pensato a come vengono progettati e sviluppati? Sei curioso di scoprire i segreti dietro la creazione dei tuoi giochi preferiti? Allora sei nel posto giusto! Questo corso è stato progettato per fornirti una solida comprensione dei Design Pattern, strumenti fondamentali per ogni sviluppatore di giochi. Attraverso esempi pratici e realistici, esploreremo insieme come questi pattern possono aiutarti a creare giochi più efficienti, flessibili e mantenibili.

In Arrivo

Corso Fondamenti di Python

Python, uno dei linguaggi di programmazione più popolari al mondo, è ampiamente utilizzato da colossi dell’informatica e della tecnologia come Google, la Nasa e Mozilla.
Questo corso sui fondamenti di Python esplorerà le ragioni del suo successo duraturo. Impareremo la potente ed espressiva sintassi di Python, che consente di ottenere risultati impressionanti con poche righe di codice.

In Arrivo

Blender Masterclass 2

I paesaggi, in generale, possono risultare intimidatori data la loro complessità, costituita da numerosi elementi che sembrano formare qualcosa di virtualmente infinito. Durante le lezioni di questo corso, ci concentreremo su una scomposizione delle diverse fasi coinvolte nella creazione di una scena, affrontandole una alla volta attraverso passi graduati.

In Arrivo

Blender Masterclass 1

In questo corso di Blender 3D, Masha, in collaborazione con Gedemy, vi mostrerà il processo di modellazione, UV mapping, shading, e texture painting di un asset. Una volta apprese le basi, vedremo anche come effettuare il baking delle textures e la preparazione con successivo export della mesh in modo che possa essere utilizzabile all’interno di un qualsiasi altro software.

Crea il tuo account gratuito Gedemy

Gedemy è la prima piattaforma di formazione italiana che ti permette di sviluppare competenze in ambiti come Game Design, Programming, Arte, 3D, Tech, AI e molto altro.