LE TUPLE
Iniziamo a parlare dell’argomento “Tuple dizionari e insiemi in Python“. Abbiamo quattro tipi di oggetti, le tuple e le liste che sono semplici elementi assortiti, i dizionari che sono coppie chiave-valore, e gli insiemi che somigliano ai classici insiemi che conosciamo dalla matematica.
Vediamole in dettaglio.
type=tuple
Le tuple sono una sequenza come le liste però a differenza delle liste una tuple è immutabile. Questo significa che una volta inseriti e inizializzati i valori che possono essere eterogenei questi non sono più modificabili. Tutte le tuple sono istanze di un tipo predefinito che si chiama tuple. Dal punto di vista delle performance una tuple è molto più efficiente perché Python può ottimizzarne il contenuto non essendo la tupla soggetta a modifiche.
def Tuple(): colori=()#LE PRIME DUE ISTRUZIONI SIGNIFICANO LA STESSA COSA colori=tuple() colori='rosso','verde','blu' colori=('rosso','verde','blu') #TUPLE UNPACKING (SPACCHETTAMENTO DI UNA TUPLA) a,b,c = colori print(a) print(b) print(c) t1=(1,2) t2=(3,4) mylist=[t1,t2] print(mylist) mylist.append((5,6)) print(mylist) Tuple()
LE TUPLE DIZIONARI E INSIEMI IN PYTHON: I DIZIONARI
Continuiamo l’argomento “Tuple dizionari e insiemi in Python” parlando di dizionari. In essi l’ordine non è definito come nelle liste e nelle tuple perché i dizionari non sono delle sequenze.
key, value
Invece di un indice numerico i dizionari usano delle chiavi univoche associate ai rispettivi valori. Un elemento singolo di un dizionario è costituito da due elementi, una chiave e un valore. Le chiavi possono essere di un type qualunque, anche per i valori non ci sono limitazioni. Gli elementi di un dizionario (le coppie key, value) sono mutabili quindi si possono modificare, eliminare, aggiungere elementi, in questo senso un dizionario è simile ad una lista.
type=dict
def Dizionari(): mydict = {} mydict = dict()#LE DUE DICHIARAZIONI SONO EQUIVALENTI mydict={"primo":20,"secondo":30,"terzo":40} #CREAZIONE E INIZIALIZZAZIONE mydict["quarto"]=50 #LA CHIAVE NON ESISTE. VIENE AGGIUNTO #L'ELEMENTO AL DIZIONARIO mydict["quarto"]=60 #MODIFICA DI UN VALORE del mydict["secondo"] #ELIMINAZIONE DI UN VALORE print(mydict) print("terzo" in mydict)#RITORNA TRUE mydict.clear()#RIMUOVE TUTTE LE CHIAVI E TUTTI I VALORI mydict={} #RIMUOVE TUTTE LE CHIAVI E TUTTI I VALORI Dizionari()
LA FUNZIONE COPY
SET
Un insieme lo possiamo considerare come una sorta di dizionario da cui andiamo ad eliminare tutti i valori per far restare sole le key. Questo perché un insieme è costituito da una serie di elementi che però devono essere tutti univoci. Si possono usare tutte le operazioni tipiche che solitamente si usano nella matematica quale unione intersezione etc.
type=set
set è mutabile, quindi possiamo modificare gli elementi di un insieme con tutte le operazioni viste precedentemente.
type=frozenset
frozenset permette ci creare insieme non mutabili.
L’OPERATORE IN
INTERSEZIONE
UNIONE
DIFFERENZA
XOR
def Set(): myset = set()#CREIAMO UN INSIEME VUOTO myset = set([10,20,30,40])#CREIAMO UN INSIEME INIZIALIZZATO myset={10,20,30,40}#CREIAMO UN INSIEME INIZIALIZZATO #myset{} ERRORE STIAMO CREANDO UN DIZIONARIO VUOTO myset=set() myset.add(10) myset.add(20) myset.add(30) myset.add(40) myset=frozenset([10,20,30]) #myset.add(40) ERRORE print(30 in myset) #print(myset) myset=set([10,20,30,40]) myset2=set([30,40,50]) print(myset & myset2)#OPERAZIONE DI INTERSEZIONE print(myset | myset2)#OPERAZIONE DI UNIONE print(myset - myset2)#OPERAZIONE DIFFERENZA print(myset ^ myset2)#XOR Set()
APPROFONDIMENTO LISTE, TUPLE E DIZIONARI
In Python, liste, tuple e dizionari sono tre dei tipi di dati più utilizzati per gestire collezioni di elementi. Ecco una panoramica di ciascuno di essi:
1. Liste
• Descrizione: Una lista è una collezione ordinata e mutabile di elementi, che possono essere di qualsiasi tipo. Gli elementi in una lista sono racchiusi tra parentesi quadre [] e separati da virgole.
• Caratteristiche:
• Le liste sono ordinate: gli elementi hanno un ordine definito.
• Le liste sono mutabili: puoi modificare, aggiungere o rimuovere elementi dopo la creazione della lista.
• Gli elementi di una lista possono essere di tipi diversi (es. interi, stringhe, altre liste, ecc.).
• Esempio:
lista = [1, 2, 3, “ciao“, [5, 6]]
print(lista) # Output: [1, 2, 3, “ciao”, [5, 6]]
2. Tuple
• Descrizione: Una tupla è una collezione ordinata e immutabile di elementi, che possono essere di qualsiasi tipo. Gli elementi in una tupla sono racchiusi tra parentesi tonde () e separati da virgole.
• Caratteristiche:
• Le tuple sono ordinate: gli elementi hanno un ordine definito.
• Le tuple sono immutabili: una volta creata, non puoi modificare, aggiungere o rimuovere elementi.
• Gli elementi di una tupla possono essere di tipi diversi, come nelle liste.
• Esempio:
tupla = (1, 2, 3, “ciao“, (5, 6))
print(tupla) # Output: (1, 2, 3, “ciao”, (5, 6))
3. Dizionari
• Descrizione: Un dizionario è una collezione non ordinata di coppie chiave-valore. Le chiavi devono essere uniche e immutabili (es. stringhe, numeri, tuple), mentre i valori possono essere di qualsiasi tipo. Gli elementi in un dizionario sono racchiusi tra parentesi graffe {} e separati da virgole, con ciascuna coppia chiave-valore separata da due punti :.
• Caratteristiche:
• I dizionari sono non ordinati: le coppie chiave-valore non hanno un ordine definito fino a Python 3.7 (in cui l’ordine di inserimento è preservato).
• I dizionari sono mutabili: puoi modificare, aggiungere o rimuovere coppie chiave-valore dopo la creazione.
• Le chiavi devono essere uniche e immutabili, ma i valori possono essere mutabili e duplicati.
• Esempio:
dizionario = {“nome“: “Alice“, “età“: 25, “linguaggi“: [“Python“, “JavaScript“]}
print(dizionario) # Output: {“nome”: “Alice”, “età”: 25, “linguaggi”: [“Python”, “JavaScript”]}
Operazioni Comuni
• Liste:
• Aggiungere un elemento: lista.append(4)
• Rimuovere un elemento: lista.remove(“ciao”)
• Accesso per indice: lista[0] (restituisce il primo elemento)
• Slicing: lista[1:3] (restituisce una sottolista)
• Tuple:
• Accesso per indice: tupla[0] (restituisce il primo elemento)
• Slicing: tupla[1:3] (restituisce una sotto-tupla)
•Dizionari:
• Aggiungere o modificare una coppia chiave-valore: dizionario[“età”] = 26
• Rimuovere una coppia chiave-valore: del dizionario[“età”]
• Accesso per chiave: dizionario[“nome”] (restituisce “Alice”)
Queste strutture dati sono fondamentali in Python e vengono utilizzate per vari scopi, dalla gestione semplice di dati a strutture più complesse.
Lascia un commento