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:

  1. Afegeix una nova clau per al nombre de pàgines.
  2. Modifica l'any de publicació.
  3. Elimina la clau del gènere.
  4. 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:

  1. Troba la unió dels dos conjunts.
  2. Troba la intersecció dels dos conjunts.
  3. Troba la diferència entre el primer i el segon conjunt.
  4. 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: True

Conclusió

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.

© Copyright 2024. Tots els drets reservats