← Índice Valentina Tech
Laboratorio 7 · Curso de Programación · CircuitPython

Diccionarios en Python: creando sistemas inteligentes con significado

Objetivos

En este laboratorio aprenderás a:


Material necesario


Introducción

Hasta ahora aprendiste a guardar información en:

Pero hay un problema importante:

👉 las listas solo guardan cosas por posición, no por significado

Ejemplo:

Pero… ¿qué significa cada cosa?

Aquí entran los diccionarios.


📘 ¿Qué es un diccionario?

Un diccionario es una estructura que guarda información en pares:

👉 clave → valor

Ejemplo:

emocion = {
    "feliz": "verde",
    "triste": "azul",
    "enojado": "rojo"
}

🧠 Analogía sencilla

Un diccionario es como:

Ejemplo:


💡 Curiosidad:
Muchos sistemas de inteligencia artificial usan estructuras tipo diccionario para representar conocimiento.


🔑 Claves y valores

En un diccionario:

Ejemplo:

"feliz" → (0, 255, 0)

🎨 Diccionarios en Circuit Playground Express

Vamos a usar diccionarios para controlar luces según estados.


🧪 Ejemplo 1: emociones como colores

Código

import time
from adafruit_circuitplayground import cp

emociones = {
    "feliz": (0, 255, 0),
    "triste": (0, 0, 255),
    "enojado": (255, 0, 0),
    "calma": (0, 0, 100)
}

estado = "feliz"

cp.pixels.brightness = 0.2

while True:

    color = emociones[estado]

    for i in range(10):
        cp.pixels[i] = color

    time.sleep(1)

🔍 Explicación

1. Diccionario principal

emociones = {
    "feliz": (0, 255, 0),
    "triste": (0, 0, 255)
}

Cada emoción tiene un color asociado.


2. Estado actual

estado = "feliz"

El sistema “vive” en un estado.


3. Acceso al diccionario

color = emociones[estado]

Busca el color correspondiente.


🧪 Ejemplo 2: cambio de estado con botones

import time
from adafruit_circuitplayground import cp

emociones = {
    "feliz": (0, 255, 0),
    "triste": (0, 0, 255),
    "enojado": (255, 0, 0)
}

estado = "feliz"

cp.pixels.brightness = 0.2

while True:

    if cp.button_a:
        estado = "feliz"

    if cp.button_b:
        estado = "enojado"

    color = emociones[estado]

    for i in range(10):
        cp.pixels[i] = color

    time.sleep(0.1)

🔍 Resultado esperado


🧪 Ejemplo 3: sistema de estados complejos

import time
from adafruit_circuitplayground import cp

estados = {
    "calma": (0, 0, 255),
    "alerta": (255, 255, 0),
    "alarma": (255, 0, 0)
}

estado = "calma"

while True:

    luz = cp.light
    sonido = cp.sound_level

    if sonido > 60:
        estado = "alarma"

    elif luz < 20:
        estado = "alerta"

    else:
        estado = "calma"

    color = estados[estado]

    for i in range(10):
        cp.pixels[i] = color

    time.sleep(0.1)

🧠 Concepto clave

Los diccionarios permiten:


🔧 Retos del laboratorio


🟢 Reto 1: Diccionario de clima

Crea un sistema con estados:

💡 Objetivo: modelar fenómenos del mundo real.


🟡 Reto 2: Diccionario musical visual

Asocia sonidos a colores:

💡 Usa sensor de sonido.


🔴 Reto 3: Diccionario dinámico

Haz que:

💡 Objetivo: modificar estructuras en tiempo real.


🔴 Reto avanzado: sistema inteligente

Crea un sistema con:

💡 Ejemplo:


🧠 Desafío final

Diseña un sistema donde:


Resumen del laboratorio

En este laboratorio aprendiste:

Ahora tu programación ya no solo organiza datos:

👉 ahora crea sistemas con significado, estructura y comportamiento inteligente

Valentina Tech · Circuit Playground Express · CircuitPython