Python – Capítulo 17: Más días festivos a la semana

Objetivo: Ilustrar la modificación de elementos de una lista.

Las listas de Python son estructuras dinámicas y pueden ser modificadas. Hasta ahora hemos accedido a los elementos de una lista simplemente para consultar su valor. En la sesión de hoy modificaremos su contenido.

Empleando el intérprete interactivo de Python, introduzcamos una lista que nos es ya familiar y asignémosla a la variable semana:

>>> semana = ['lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado', 'domingo']

El intérprete se la traga y no devuelve nada, ya que se trata de una asignación. No obstante, verifiquemos que está en memoria:

>>> semana

['lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado', 'domingo']

Lo cantaba Bob Geldof y la mayoría lo suscribimos. ¿A quién le gusta un lunes?

Python es tan poderoso que puede hacer cambiar tu valoración sobre el primer día de la semana. Vamos a transformarlo en un festivo.

Los elementos individuales que constituyen una lista pueden ser modificados in situ accediendo a ellos a través de su índice. Decimos que las listas son estructuras de datos mutables. Más adelante, cuando hablemos de las tuplas, conoceremos otra estructura similar, inmutable, que no permite esta modificación in situ.

>>> semana[0]='fiesta'

Así de simple. Accedemos a los elementos de una lista a través de su índice como si de variables individuales se tratara, asignándoles el valor que deseemos. Recuerda que el primer elemento de una lista tiene por índice cero.

Revisemos nuestra semana tras esta sencilla operación:

>>> semana

['fiesta', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado', 'domingo']

Esto, sin duda, tiene ya otro color, aunque presenta un serio problema: el martes pasa a ser el nuevo día negro, más oscuro aún, si cabe, por el hecho de estar precedido por tres días de ocio.

Nada que no podamos solucionar:

>>> semana[1]='fiesta'

>>> semana

['fiesta', 'fiesta', 'miércoles', 'jueves', 'viernes', 'sábado', 'domingo']

Y ya puestos, presta mucha atención a esta asignación múltiple:

>>>semana[2]=semana[3]=semana[4]=semana[5]='fiesta'

>>> semana

['fiesta', 'fiesta', 'fiesta', 'fiesta', 'fiesta', 'fiesta', 'domingo']

¿Quién dijo eso de que no todos los días eran fiesta?

Javier Montero Gabarró


Fecha de la última revisión: 20 de febrero de 2013


http://elclubdelautodidacta.es/wp/2011/08/python-capitulo-17-mas-dias-festivos-a-la-semana/


El texto de este artículo se encuentra sometido a una licencia Creative Commons del tipo CC-BY-NC-ND (reconocimiento, no comercial, sin obra derivada, 3.0 unported)


El Club del Autodidacta


Consulta el índice completo de artículos relacionados con Python.

2 opiniones en “Python – Capítulo 17: Más días festivos a la semana”

Responder a Javier Montero Cancelar respuesta