Cadenas en Python
Cadenas en Python
Objetivos de la lección
Esta lección es una rápida introducción a técnicas de manipulación
de cadenas de caracteres (o strings) en Python. Saber cómo manipular
cadenas de caracteres juega un papel fundamental en la mayoría de las
tareas de procesamiento de texto. Si quieres experimentar con las
siguientes lecciones puedes escribir y ejecutar pequeños programas tal
como lo hicimos en lecciones previas, o puedes abrir tu intérprete de
comandos de Python / Terminal para probarlos ahí.
Concatenar
Este término significa juntar cadenas de caracteres. El proceso
de concatenación se realiza mediante el operador de suma (+). Ten en
cuenta que debes marcar explícitamente dónde quieres los espacios en
blanco y colocarlos entre comillas.
Multiplicar
Si quieres varias copias de una cadena de caracteres utiliza el operador
de multiplicación (*). En este ejemplo, la cadena de
caracteres mensaje2a lleva el contenido “Hola” tres veces, mientras que
la cadena de caracteres mensaje2b tiene el contenido “Mundo”.
Ordenemos imprimir las dos cadenas.
Añadir
¿Qué pasa si quieres añadir material de manera sucesiva al final de una
cadena de caracteres? El operador especial para ello es compuesto
(+=).
mensaje3 = 'Hola'
mensaje3 += ' '
mensaje3 += 'Mundo'
print(mensaje3)
-> Hola Mundo
Encontrar
Puedes buscar una sub-cadena en una cadena de caracteres utilizando
el método find y tu programa te indicará el índice de inicio de la misma.
Esto es muy útil para procesos que veremos más adelante. Ten en
mente que los índices están numerados de izquierda a derecha y que el
número en el que se comienza a contar la posición es el 0, no el 1.
Minúsculas
A veces es útil convertir una cadena de caracteres a minúsculas. Para
ello se utiliza el método lower. Por ejemplo, al uniformar los caracteres
permitimos que la computadora reconozca fácilmente que “Algunas
Veces” y “algunas veces” son la misma frase.
Cortar
Si quieres cortar partes que no quieras del principio o del final de la
cadena de caracteres, lo puedes hacer creando una sub-cadena. El
mismo tipo de técnica te permite separar una cadena muy larga en
componentes más manejables.
Esto hace mucho más simple usar este método en conjunción con el
método find como en el próximo ejemplo, que busca la letra “d” en los seis
primeros caracteres de “Hola Mundo” y correctamente nos dice que no se
encuentra ahí (-1). Esta técnica es mucho más eficaz en cadenas largas -
documentos enteros, por ejemplo. Observa que la ausencia de un número
entero antes de los dos puntos significa que queremos empezar desde el
principio de la cadena. Podemos usar la misma técnica para decirle al
programa que pase hasta el final de la cadena de caracteres dejando vacío
después de los dos puntos. Y recuerda que la posición del índice empieza a
contar desde 0, no desde 1.
print(len(mensaje7))
quiere decir que se lleva la cadena de caracteres “mensaje7” a la
función len y entonces enviar el valor resultante de esa función a la
declaración print para ser impresa. Una función puede ser llamada sin
un argumento, pero de todas formas tienes que incluir un par de
paréntesis vacíos después del nombre de la función. Vimos un ejemplo
de ello también.
Secuencias de escape
¿Qué haces cuando necesitas incluir comillas en una cadena de
caracteres? No quieres que el intérprete de Python se equivoque y
piense que la cadena termina en donde se encuentre una comilla. En
Python puedes poner una barra invertida (\) enfrente de la comilla para
que no acabe ahí la cadena. Esto es conocido como secuencia de
escape.
print('\"')
-> "
print('El programa imprime \"Hola Mundo\"')
-> El programa imprime "Hola Mundo"
print('Hola\tHola\tHola\nMundo')
-> Hola Hola Hola
Mundo
Lecturas sugeridas
• Lutz, Learning Python
o Ch. 7: Strings
o Ch. 8: Lists and Dictionaries
o Ch. 10: Introducing Python Statements
o Ch. 15: Function Basics