REVIT ARCHITECTURE (954) – PYTHON – Funciones (38) – Tuplas y diccionarios (10) Ejemplos práticos

Primer ejemplo

Creación de la tupla:

7431

my_tup es una variable que almacena una tupla con los valores (1, 2, 3). Una tupla es una estructura de datos en Python similar a una lista, pero a diferencia de las listas, las tuplas son inmutables, lo que significa que no se pueden modificar una vez creadas.

Acceso a un elemento de la tupla:

7432

Se utiliza la función print() para mostrar un elemento específico de la tupla en la consola. El índice [2] se refiere a la posición del elemento dentro de la tupla.

En Python, los índices comienzan en 0, por lo que:

my_tup[0] es 1
my_tup[1] es 2
my_tup[2] es 3
Entonces, print(my_tup[2]) imprimirá el número 3 en la consola.

Segundo ejemplo

7434

Creación de la tupla:

7433

tup es una variable que almacena una tupla con los valores 1, 2, y 3. Aunque la tupla se crea sin paréntesis, Python reconoce automáticamente la secuencia de valores separada por comas como una tupla. Por lo tanto, tup es equivalente a (1, 2, 3).

Asignación múltiple:

a, b, c = tup

7435

Esta línea realiza una asignación múltiple, donde cada elemento de la tupla tup se asigna a una variable distinta:

a se asigna el valor 1
b se asigna el valor 2
c se asigna el valor 3
Esto es posible porque la tupla tiene el mismo número de elementos que las variables en el lado izquierdo de la asignación.

Multiplicación y salida:

7436

Finalmente, se utiliza la función print() para calcular y mostrar el producto de las tres variables. Aquí se multiplica a, b y c, que contienen los valores 1, 2, y 3 respectivamente.

La operación es:

Por lo tanto, el resultado que se imprimirá en la consola es 6.

Ejemplo tercero

7437

Definir la tupla:

7438

Esta línea crea una tupla llamada tup que contiene los elementos: 1, 2, 3, 3, 4, 5, 6, 3, 7, 3, 8, 9.

Contar las apariciones del número 3:
Para contar cuántas veces aparece el número 3 en la tupla, puedes usar el método count() que tienen las tuplas en Python.

7439

tup.count(3) cuenta cuántas veces aparece el número 3 en la tupla tup y almacena ese valor en la variable duplicates.

Imprimir el resultado:
Finalmente, puedes imprimir el resultado utilizando la función print():

7440

Esto imprimirá 4, porque el número 3 aparece 4 veces en la tupla tup.

Ejemplo cuarto

7441

El código tiene el propósito de combinar dos diccionarios, d1 y d2, en un tercer diccionario, d3.

 Definir los diccionarios:

7442

d1 es un diccionario que contiene dos pares clave-valor: ‘Sonia González’: ‘A’ y ‘Marcos Fernández’: ‘B+’.
d2 es otro diccionario con dos pares clave-valor: ‘Laura Giménez’: ‘A’ y ‘Carlos Martínez’: ‘C’.
d3 es un diccionario vacío donde se almacenará la combinación de d1 y d2.
Iterar sobre los diccionarios y combinarlos:
Para combinar los diccionarios d1 y d2 en d3, se puede usar un bucle for y el método update() de los diccionarios, que agrega todos los pares clave-valor de un diccionario a otro.

Aquí está el código para hacerlo:

7443

Explicación del bucle for:

for item in (d1, d2): recorre los dos diccionarios d1 y d2 que están contenidos en la tupla (d1, d2).
d3.update(item) agrega los elementos del diccionario actual (item, que puede ser d1 o d2) al diccionario d3. El método update() sobrescribe los valores de d3 si hay claves duplicadas, pero en este caso no hay claves duplicadas entre d1 y d2.
Imprimir el resultado:
Finalmente, se puede imprimir d3 para ver la combinación de d1 y d2.

7444

Resultado:
Cuando se ejecuta este código, d3 contendrá todos los pares clave-valor de d1 y d2, y se verá así:

{‘Sonia González’: ‘A’, ‘Marcos Fernández’: ‘B+’, ‘Laura Giménez’: ‘A’, ‘Carlos Martínez’: ‘C’}

Ejercicio quinto

El código indicado a continuación está diseñado para crear una tupla a partir de la lista my_list.

7446

 Definir la lista:

7445

my_list es una lista en Python que contiene los elementos «car», «Ford», «flower», y «Tulip».
Las listas en Python son colecciones ordenadas de elementos que se pueden modificar, agregar o eliminar.
Convertir la lista en una tupla:
Para convertir la lista my_list en una tupla, puedes usar la función tuple() de Python. Una tupla es similar a una lista, pero es inmutable, lo que significa que no se puede modificar una vez creada.

El código para realizar esta conversión sería:

7447

tuple(my_list) convierte la lista my_list en una tupla, donde cada elemento de la lista se convierte en un elemento de la tupla.
El resultado se almacena en la variable t.
Imprimir la tupla:
Finalmente, se puede imprimir la tupla para ver su contenido:

7448

Cuando se ejecuta este código, la salida será una tupla que contiene los mismos elementos que la lista original:

7449

Esto se imprimirá en la consola como resultado del print(t). La tupla es inmutable, lo que significa que una vez creada, no puedes cambiar sus elementos.

Ejercicio séptimo

El siguiente código quiere convertir una tupla de tuplas (spaces) en un diccionario (spaces_dictionary).

7452

Definir la tupla de tuplas:

7453

spaces es una tupla que contiene dos tuplas:
La primera tupla es («uso restringido», «#usuario habituado con el espacio»), donde «uso restringido» es un tipo de uso y «#usuario habituado con el espacio» es la descripción del usuario correspondiente.
La segunda tupla es («uso público», «#usuario no habituado con el espacio»), donde «uso público» es otro tipo de uso y «#usuario no habituado con el espacio» es la descripción del usuario para ese tipo de uso.
Convertir la tupla de tuplas en un diccionario:
Para convertir esta tupla de tuplas en un diccionario, se puede usar la función dict() en Python. Un diccionario es una estructura de datos que asocia claves (en este caso, los tipos de uso) con valores (las descripciones de los usuarios).

El código para realizar esta conversión sería:

7454

dict(spaces) convierte la tupla de tuplas spaces en un diccionario.
El diccionario resultante tendrá ‘uso restringido’ como clave con el valor ‘#usuario habituado con el espacio’, y ‘uso público’ como clave con el valor ‘#usuario no habituado con el espacio’.
Imprimir el diccionario:
Finalmente, puedes imprimir el diccionario resultante para ver su contenido:

7455

Resultado

Cuando se ejecuta este código, el resultado en la consola será el siguiente diccionario:

{‘uso restringido’: ‘#usuario habituado con el espacio’, ‘uso público’: ‘#usuario no habituado con el espacio’}

Este diccionario asocia cada tipo de uso de un espacio (clave) con la descripción correspondiente del usuario (valor). Al ejecutar print(spaces_dictionary), el diccionario se imprimirá en la consola, mostrando cómo cada tipo de uso está vinculado a su correspondiente descripción de usuario.

Ejercicio séptimo

El siguiente código realiza diferentes operaciones con un diccionario:

7456

Definir el diccionario original:

7457

my_dictionary es un diccionario que contiene dos pares clave-valor:

«ABC» con el valor 122
«BCD» con el valor 233
Crear una copia del diccionario:

7458

my_dictionary.copy() crea una copia superficial (shallow copy) del diccionario my_dictionary.
La copia superficial significa que copy_my_dictionary es un nuevo diccionario que tiene los mismos pares clave-valor que my_dictionary en el momento de la copia. Sin embargo, si el diccionario original contiene objetos mutables, los objetos en la copia siguen refiriéndose a los mismos objetos mutables.
Limpiar el diccionario original:

7459

my_dictionary.clear() elimina todos los elementos del diccionario my_dictionary.
Después de esta operación, my_dictionary se convertirá en un diccionario vacío {}.

Imprimir la copia del diccionario:

7460

print(copy_my_dictionary) imprime el contenido de copy_my_dictionary.
Dado que copy_my_dictionary fue creado antes de que my_dictionary fuera limpiado, copy_my_dictionary conserva los pares clave-valor originales que tenía my_dictionary antes de que se vaciara.

Resultado:
Cuando se ejecuta este código, el resultado en la consola será:

7461

copy_my_dictionary aún contiene los pares clave-valor originales ({‘ABC’: 122, ‘BCD’: 233}) porque fue creado antes de que my_dictionary se limpiara.
my_dictionary ha sido vaciado y no tiene elementos después de la llamada a clear(), pero eso no afecta a la copia copy_my_dictionary.
En resumen, copy_my_dictionary es una copia independiente del diccionario original que conserva el contenido original incluso después de que my_dictionary ha sido vaciado.

Ejercicio octavo

El código  proporcionado está diseñado para recorrer un diccionario de colores y sus valores RGB, y luego imprimir cada par clave-valor en un formato legible.

7462

Definir el diccionario colors:

7463

colors es un diccionario en Python que asocia nombres de colores (las claves) con sus valores RGB (las tuplas de tres números enteros).
Cada clave en el diccionario es el nombre de un color, y cada valor es una tupla que representa el color en el formato RGB (Red, Green, Blue).

Iterar sobre los elementos del diccionario:

7464

colors.items() devuelve una vista de todos los pares clave-valor en el diccionario colors. Cada par es una tupla donde el primer elemento es la clave (el nombre del color) y el segundo elemento es el valor (la tupla RGB).
El bucle for col, rgb in colors.items(): itera sobre cada par clave-valor en el diccionario. En cada iteración:
col toma el valor de la clave actual (el nombre del color).
rgb toma el valor asociado con esa clave (la tupla RGB del color).
print(col, «:», rgb) imprime el nombre del color seguido de un : y luego la tupla RGB asociada.

Resultado
Cuando se ejecuta este código, el resultado en la consola será:

7465

print(col, «:», rgb) imprime cada nombre de color (col) seguido de un : y luego la tupla RGB (rgb) correspondiente.
Cada línea del resultado muestra un color y su representación en el formato RGB, lo que proporciona una forma clara y legible de ver qué valores RGB corresponden a cada color en el diccionario.

Licencia Creative Commons Contenido Web de Yolanda Muriel está sujeto bajo Licencia Creative Commons Atribución-NoComercial-SinDerivadas 3.0 Unported.

Deja un comentario