En aquest tema, explorarem dues estructures de dades fonamentals en la programació: els diccionaris i els conjunts. Aquestes estructures són molt útils per a emmagatzemar i manipular dades de manera eficient.
Diccionaris
Què és un Diccionari?
Un diccionari és una col·lecció no ordenada de parelles clau-valor. Cada clau és única dins del diccionari i s'utilitza per accedir al valor associat.
Característiques dels Diccionaris
- Claus Úniques: Cada clau dins del diccionari ha de ser única.
- Accés Ràpid: Els diccionaris permeten accedir als valors de manera ràpida utilitzant les claus.
- Mutables: Els diccionaris poden ser modificats després de la seva creació.
Exemple de Diccionari en Python
# Creació d'un diccionari
estudiant = {
"nom": "Joan",
"edat": 21,
"carrera": "Enginyeria Informàtica"
}
# Accés a un valor
print(estudiant["nom"]) # Sortida: Joan
# Afegir un nou parell clau-valor
estudiant["nota"] = 9.5
# Modificar un valor existent
estudiant["edat"] = 22
# Eliminar un parell clau-valor
del estudiant["carrera"]
# Iterar sobre un diccionari
for clau, valor in estudiant.items():
print(f"{clau}: {valor}")Operacions Comunes amb Diccionaris
| Operació | Descripció | Exemple |
|---|---|---|
| Accés a un valor | Obtenir el valor associat a una clau | estudiant["nom"] |
| Afegir/Modificar | Afegir o modificar un parell clau-valor | estudiant["nota"] = 9.5 |
| Eliminar | Eliminar un parell clau-valor | del estudiant["carrera"] |
| Iterar | Recórrer totes les claus i valors | for clau, valor in estudiant.items(): |
| Comprovar existència | Verificar si una clau existeix en el diccionari | "nom" in estudiant |
Conjunts
Què és un Conjunt?
Un conjunt és una col·lecció no ordenada d'elements únics. Els conjunts són útils per a operacions matemàtiques com la unió, intersecció i diferència.
Característiques dels Conjunts
- Elements Únics: Cada element dins del conjunt ha de ser únic.
- No Ordenats: Els elements no tenen un ordre específic.
- Mutables: Els conjunts poden ser modificats després de la seva creació.
Exemple de Conjunt en Python
# Creació d'un conjunt
fruites = {"poma", "plàtan", "taronja"}
# Afegir un element
fruites.add("mango")
# Eliminar un element
fruites.remove("plàtan")
# Comprovar si un element existeix
print("poma" in fruites) # Sortida: True
# Iterar sobre un conjunt
for fruita in fruites:
print(fruita)Operacions Comunes amb Conjunts
| Operació | Descripció | Exemple |
|---|---|---|
| Afegir | Afegir un element al conjunt | fruites.add("mango") |
| Eliminar | Eliminar un element del conjunt | fruites.remove("plàtan") |
| Unió | Unir dos conjunts | conjunt1.union(conjunt2) |
| Intersecció | Trobar elements comuns entre conjunts | conjunt1.intersection(conjunt2) |
| Diferència | Trobar elements únics en un conjunt | conjunt1.difference(conjunt2) |
| Comprovar existència | Verificar si un element existeix en el conjunt | "poma" in fruites |
Exemple d'Operacions amb Conjunts
# Creació de dos conjunts
conjunt1 = {"poma", "plàtan", "taronja"}
conjunt2 = {"taronja", "mango", "kiwi"}
# Unió
unio = conjunt1.union(conjunt2)
print(unio) # Sortida: {'poma', 'plàtan', 'taronja', 'mango', 'kiwi'}
# Intersecció
interseccio = conjunt1.intersection(conjunt2)
print(interseccio) # Sortida: {'taronja'}
# Diferència
diferencia = conjunt1.difference(conjunt2)
print(diferencia) # Sortida: {'poma', 'plàtan'}Exercicis Pràctics
Exercici 1: Diccionaris
Crea un diccionari que emmagatzemi informació sobre un llibre (títol, autor, any de publicació, gènere). Després, realitza les següents operacions:
- Afegeix una nova clau per al nombre de pàgines.
- Modifica l'any de publicació.
- Elimina la clau del gènere.
- Itera sobre el diccionari i imprimeix cada clau i valor.
Solució
# Creació del diccionari
llibre = {
"titol": "El Quixot",
"autor": "Miguel de Cervantes",
"any_publicacio": 1605,
"genere": "Novel·la"
}
# Afegir nombre de pàgines
llibre["nombre_pagines"] = 863
# Modificar any de publicació
llibre["any_publicacio"] = 1615
# Eliminar clau del gènere
del llibre["genere"]
# Iterar sobre el diccionari
for clau, valor in llibre.items():
print(f"{clau}: {valor}")Exercici 2: Conjunts
Crea dos conjunts de números enters. Després, realitza les següents operacions:
- Troba la unió dels dos conjunts.
- Troba la intersecció dels dos conjunts.
- Troba la diferència entre el primer i el segon conjunt.
- Comprova si un número específic està en el primer conjunt.
Solució
# Creació dels conjunts
conjunt1 = {1, 2, 3, 4, 5}
conjunt2 = {4, 5, 6, 7, 8}
# Unió
unio = conjunt1.union(conjunt2)
print(unio) # Sortida: {1, 2, 3, 4, 5, 6, 7, 8}
# Intersecció
interseccio = conjunt1.intersection(conjunt2)
print(interseccio) # Sortida: {4, 5}
# Diferència
diferencia = conjunt1.difference(conjunt2)
print(diferencia) # Sortida: {1, 2, 3}
# Comprovar existència
print(3 in conjunt1) # Sortida: TrueConclusió
En aquesta secció, hem après sobre dues estructures de dades fonamentals: els diccionaris i els conjunts. Els diccionaris són útils per a emmagatzemar parelles clau-valor, mentre que els conjunts són ideals per a treballar amb col·leccions d'elements únics. Amb els exemples i exercicis proporcionats, hauríeu de tenir una bona comprensió de com utilitzar aquestes estructures en els vostres programes.
Fonaments de la Programació
Mòdul 1: Introducció a la Programació
- Què és la programació?
- Història de la programació
- Llenguatges de programació
- Entorns de desenvolupament
