
Ejemplos variados sobre el uso de strings listas y sets
Capítulo 7: Normas para strings, listas y sets
En este capítulo aprenderás unas cuantas cosas sobre strings, listas y sets. También verás cómo utilizar frozenset para convertir sets en inmutables.
Acceder por separado a cada carácter de un string
Es posible acceder por separado a cada uno de los caracteres de un string.
texto = "Programación fácil."
print(texto[0])
print(texto[0:15])
Con 0 accedemos a la primera posición del string, como si de una lista se tratara. También podemos especificar un rango de caracteres.
P
Programación fá
Convertir sets en inmutables
Los sets son mutables, por lo que pueden variar, podemos añadir sin problema nuevos elementos cómo naranja:
colores = {'rojo', 'azul', 'rojo', 'verde', 'amarillo', 'azul'}
print(colores)
colores.add("Naranja")
print(colores)
{'rojo', 'verde', 'azul', 'amarillo'}
{'Naranja', 'amarillo', 'verde', 'azul', 'rojo'}
¿Pero qué pasa si queremos prevenir estos cambios?
En ese caso, puedes utilizar frozen sets, con lo que congelaremos el set y será inmutable.
colores = frozenset({'rojo', 'azul', 'rojo', 'verde', 'amarillo', 'azul'})
print(colores)
colores.add("Naranja")
print(colores)
Si intentas ejecutar esto, recibirás un AttributeError que nos dirá que frozenset no tiene el atributo add.
Traceback (most recent call last):
File "RUTA DEL ARCHIVO", line X, in module
colores.add("Naranja")
AttributeError: 'frozenset' object has no attribute 'add'
Puedes hacer la prueba de que no da error si quitas el add.
Multiplicando la llamada de listas Python
Termino el capítulo mostrándote una forma curiosa para llamar a listas multiplicando.
Tengo estas dos listas:
colores = ['rojo', 'azul', 'verde', 'amarillo']
print(colores * 5)
El resultado es que con esta multiplicación en la llamada, estamos multiplicándola por 5, con lo que devuelve el contenido de la lista 5 veces.
['rojo', 'azul', 'verde', 'amarillo', 'rojo', 'azul', 'verde', 'amarillo', 'rojo', 'azul', 'verde', 'amarillo', 'rojo', 'azul', 'verde', 'amarillo', 'rojo', 'azul', 'verde', 'amarillo']
Lo mismo puedes hacer llamado a elementos de la lista:
print(colores[2] * 5)
verdeverdeverdeverdeverde
Comentarios
Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.