3.3 Cadenas de texto

3.3 Cadenas de texto

Las cadenas de texto son secuencias de caracteres. También se les conoce como «strings» y nos permiten almacenar información textual de forma muy cómoda.

Es importante destacar que Python 3 almacena los caracteres codificados en el estándar Unicode, lo que es una gran ventaja con respecto a versiones antiguas del lenguaje. Además permite representar una cantidad ingente de símbolos incluyendo los famosos emojis

3.3.1 Creando «strings»

Para escribir una cadena de texto en Python basta con rodear los caracteres con comillas simples

3.3 Cadenas de texto

Para incluir comillas dobles dentro de la cadena de texto no hay mayor inconveniente:

3.3 Cadenas de texto

Puede surgir la duda de cómo incluimos comillas simples dentro de la propia cadena de texto. Veamos soluciones para ello:

3.3 Cadenas de texto

En la primera opción estamos escapando las comillas simples para que no sean tratadas como caracteres especiales. En la segunda opción estamos creando el «string» con comillas dobles (por fuera) para poder incluir directamente las comillas simples (por dentro). Python también nos ofrece esta posibilidad.

Comillas triples

Hay una forma alternativa de crear cadenas de texto utilizando comillas triples. Su uso está pensado principalmente para cadenas multilínea:

3.3 Cadenas de texto

Importante: Los tres puntos … que aparecen a la izquierda de las líneas no están incluidos en la cadena de texto. Es el símbolo que ofrece el intérprete de Python cuando saltamos de línea.

Cadena vacía

La cadena vacía es aquella que no contiene ningún carácter. Aunque a priori no lo pueda parecer, es un recurso importante en cualquier código. Su representación en Python es la siguiente:

3.3 Cadenas de texto

3.3.2 Conversión

Podemos crear «strings» a partir de otros tipos de datos usando la función str():

3.3 Cadenas de texto

Para el caso contrario de convertir un «string» a un valor numérico, tenemos a disposición las funciones ya vistas:

3.3 Cadenas de texto

Pero hay que tener en cuenta un detalle. La función int() también admite la base en la que se encuentra el número. Eso significa que podemos pasar un número, por ejemplo, en hexadecimal (como «string») y lo podríamos convertir a su valor entero:

3.3 Cadenas de texto

Nota: La base por defecto que utiliza int() para convertir cadenas de texto es la base decimal.
3.3.3 Secuencias de escape

Python permite escapar el significado de algunos caracteres para conseguir otros resultados. Si escribimos una barra invertida \ antes del carácter en cuestión, le otorgamos un significado especial.

Quizás la secuencia de escape más conocida es \n que representa un salto de línea, pero existen muchas otras:

3.3 Cadenas de texto

3.3 Cadenas de texto

Nota: Al utilizar la función print() es cuando vemos realmente el resultado de utilizar los caracteres escapados.

Expresiones literales

Nivel intermedio

Hay situaciones en las que nos interesa que los caracteres especiales pierdan ese significado y poder usarlos de otra manera. Existe un modificar de cadena que proporciona Python para tratar el texto en bruto. Es el llamado «raw data» y se aplica anteponiendo una r a la cadena de texto.

Veamos algunos ejemplos:

3.3 Cadenas de texto

3.3 Cadenas de texto

Consejo: El modificador r’’ es muy utilizado para la escritura de expresiones regulares.

3.3.4 Más sobre print()

Hemos estado utilizando la función print() de forma sencilla, pero admite algunos parámetros interesantes:

3.3 Cadenas de texto

Línea 4: Podemos imprimir todas las variables que queramos separándolas por comas.

Línea 7: El separador por defecto entre las variables es un espacio, podemos cambiar el carácter que se utiliza como separador entre cadenas.

Línea 10: El carácter de final de texto es un salto de línea, podemos cambiar el carácter que se utiliza como final de texto.

3.3.5 Leer datos desde teclado

Los programas se hacen para tener interacción con el usuario. Una de las formas de interacción es solicitar la entrada de datos por teclado. Como muchos otros lenguajes de programación, Python también nos ofrece la posibilidad de leer la información introducida por teclado. Para ello se utiliza la función input():

3.3 Cadenas de texto

3.3 Cadenas de texto

Nota: La función input() siempre nos devuelve un objeto de tipo cadena de texto o str. Tenerlo muy en cuenta a la hora de trabajar con números, ya que debemos realizar una conversión explícita.

Ejercicio

Escriba un programa en Python que lea por teclado dos números enteros y muestre por pantalla el resultado de realizar las operaciones básicas entre ellos.

Ejemplo

  • Valores de entrada 7 y 4.
  • Salida esperada:

3.3 Cadenas de texto

Consejo: Aproveche todo el potencial que ofrece print() para conseguir la salida esperada.

Publicaciones Similares