Liste vs tuple vs set in Python
Python ha tre modi comuni per tenere insieme più valori. Una lista può cambiare e tiene l'ordine, una tupla è un record fisso e un set dimentica i duplicati. Ogni esempio sotto è stato eseguito, e l'output mostrato è esatto.
Liste: ordine, e possono cambiare
Una lista è la collezione predefinita: append aggiunge in fondo, e un ciclo for percorre gli elementi in ordine. Usa una lista quando il gruppo crescerà o si ridurrà, come un inventario.
parts = ["wrench"]
parts.append("cable")
print(parts)Output:
['wrench', 'cable']
Tuple: un record fisso
Una tupla non si può modificare sul posto. Questo la rende adatta a una coordinata o a qualsiasi coppia che vuoi spacchettare in due nomi. Restituire due valori da una funzione costruisce anch'essa una tupla.
point = (3, 4) x, y = point print(x) print(y)
Output:
3 4
Set: elementi unici
Un set butta i duplicati e risponde in fretta a "c'è qui dentro?". Il set vuoto è set(), perché {} è un dizionario vuoto. set(needed) <= set(have) chiede se ogni elemento necessario è già presente.
needed = {"wrench", "cable"}
have = ["wrench", "cable", "chip", "wrench"]
print(needed <= set(have))Output:
True
Domande comuni
- Posso usare una tupla come chiave di dizionario?
- Sì, perché una tupla non può cambiare. Una lista non può essere una chiave. È un motivo per cui le coordinate sono spesso tuple.
- Come creo un set vuoto?
- Chiama set(). Scrivere {} dà un dizionario vuoto.
- Quando scelgo un set invece di una lista?
- Quando i duplicati non contano e ti interessa l'appartenenza, come "ho ogni pezzo di questa ricetta?"