Diccionarios en Python

definición, uso

qué es un diccionario

creditos = {'anatomía': 3, 'toxicología': 2}
print(creditos)

Pruebe lo siguiente:

print(creditos["anatomía"])
creditos["química general"] = 3
print(creditos)
del creditos["anatomía"]
print(creditos)

claves ausentes

Pruebe lo siguiente:

print(creditos["bioquímica"])
claves = ['anatomía', 'bioquímica']

for clave in claves:
    if clave in creditos:
        print(clave, 'tiene', creditos[clave], 'créditos')
    else:
        print('ni idea cuántos créditos tiene', clave)

uso en ciclos for

alternativas para recorrer diccionarios

creditos = {'anatomía': 3, 'toxicología': 2}

for k in creditos.keys():
    print(k)

Ejercicio: Escriba un ciclo que imprima, en una línea por materia, el nombre y # de créditos; p.ej., anatomía: 3

for v in creditos.values():
    print(v)

for k, v in creditos.values():
    print(v)

len() también sirve con diccionarios, pruebe.

usos típicos

correspondencia/traducción

Relaciones 1:1; correspondencia entre la clave y el valor

Ejemplo:

{
    "árbol": "tree",
    "manzana": "apple",
    "casa": "house",
    "madre": "mother",
    ...
}

agregación

Muchas variables, vs. un diccionario con múltiples entradas

Ejemplo: dada una cadena de ADN, ¿cuántos nucleótidos de cada tipo hay?

adn = "ATGCAACTGGGAACCCTCA"
...
hay 6 A
hay 3 T
hay 4 G
hay 6 C

estructurar datos

materias = [
    {'nombre': 'Anatomía', 'docente': 'Ana María', 'créditos': 3},
    {'nombre': 'Bioquímica', 'docente': 'Sandra Johanna', 'créditos': 3},
]
materias = {
    'Anatomía': {'docente': 'Ana María', 'créditos': 3},
    'Bioquímica': {'docente': 'Sandra Johanna', 'créditos': 3},
}

ejercicios

masas molares

Dadas las masas molares de elementos, y una lista de átomos de un compuesto, calcule la masa total del compuesto.

masas_molares = {
    'C': 12.011, 'H': 1.008, 'O': 15.999,
    'N': 14.007, 'P': 30.974, 'S': 32.06,
}
atomos_compuesto = [
    'C', 'C', 'C', 'C',
    'H', 'H', 'H', 'H',
    'N', 'N',
    'O', 'O'
]

...

La masa molar del compuesto es ...

masas molares (con diccionarios)

Dadas las masas molares de elementos, un diccionario describiendo un compuesto, calcule la masa total del compuesto.

masas_molares = {
    'C': 12.011, 'H': 1.008, 'O': 15.999,
    'N': 14.007, 'P': 30.974, 'S': 32.06,
}
atomos_compuesto = {'C': 4, 'H': 4, 'N': 2, 'O': 2}

...

La masa molar del compuesto es ...

demo PubChem

intro a SMILES


CCCC

         


CC(C)CC

         


CC(O)=O

         


C1C=CC=CC=1

buscar nombres de compuestos