4.3 Cadenas de caracteres/strings – vector de letras en Python

El manejo de texto en computador requiere una representación de los símbolos o letras que se usan en un idioma.

Cada símbolo, letra o «caracter» que se presenta al escribir en pantalla se convierte en una sucesión ordenada de imágenes, semejante a agrupar las fichas del juego Scrabble

Una palabra se puede observar como las casillas de un vector, dando la pauta para el manejo de texto en el computador.

En Python, el texto para los mensajes en las preguntas input y las salidas print se escriben entre comillas " o apóstrofes '. Cada letra de una palabra se puede identificar por su posición como en un vector.

>>> palabra = 'manzana'
>>> len(palabra)
7
>>> palabra[0]
'm'
>>> palabra[4]
'a'
>>> 

Concatenar cadenas o strings

Si al unir palabras se forma una oración, el concepto se extiende a programación como «concatenar«. Básicamente concatenar es la unión de varias palabras para formar una oración un título o un mensaje.

>>> palabra1 = 'El'
>>> palabra2 = 'saber'
>>> frase = palabra1 + palabra2
>>> frase
'Elsaber'
>>> frase = palabra1 + ' ' + palabra2
>>> frase
'El saber'
>>> cadena1 = 'no ocupa lugar'
>>> frase = frase + ' ' + cadena1
>>> frase
'El saber no ocupa lugar'
>>> 

Mayúsculas y Minúsculas con caracteres de letras

Para convertir una frase o palabra a mayúsculas o viceversa, se usan las instrucciones: palabra.upper() y palabra.lower().

Siguiendo el ejemplo anterior, el ejemplo de uso es:

>>> frase
'El saber no ocupa lugar'
>>> enmayusculas = frase.upper()
>>> enmayusculas
'EL SABER NO OCUPA LUGAR'
>>> enminusculas = frase.lower()
>>> enminusculas
'el saber no ocupa lugar'
>>> 

Comparar cadenas o strings

También es posible comparar caracteres, o cadenas entre si, por ejemplo para buscar cuántas vocales tiene una palabra. Considere que los caracteres o ‘dibujos de letras’  mayúsculas son diferentes a los de minúsculas.

>>> letra1 = 'd'
>>> letra1 > 'a'
True
>>> letra1 > 'g'
False
>>> letra1 == 'D'
False
>>> 

Se puede comparar el orden alfabético de los caracteres, pues el computador los almacena en una posición ordenada, semejante a un vector [‘a’,’b’,’c’, … ]

ejemplo con cadenas, o palabras:

>>> fruta1 = 'manzana'
>>> fruta2 = 'pera'
>>> fruta3 = 'manzana'
>>> fruta4 = 'MANZANA'
>>> fruta1 == fruta3
True
>>> fruta1 == fruta2
False
>>> fruta1 == fruta4
False
>>> 

Segmentar o dividir una cadena/string/texto usando split()

Para segmentar o dividir el texto por algún símbolo se dispone de la instrucción frase.split().

En el ejemplo se muestra como se separa la frase

>>> separa = frase.split()
>>> separa
['El', 'saber', 'no', 'ocupa', 'lugar']
>>> separa[1]
'saber'
>>>