Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Python desde cero - enfoque científico, Unidad 2 — Tipos de datos y variables, 2.1 — Tipos de datos fundamentales ·

str y manipulación básica de texto

str y manipulación básica de texto

Introducción

En la programación científica, str (string) es una estructura fundamental para manejar textos. Los strings son secuencias de caracteres que se utilizan en diversos contextos, desde almacenar nombres de archivos hasta representar datos numéricos en formato legible por humanos o procesables por otros sistemas. En este artículo, exploraremos cómo crear y manipular strings, así como algunos aspectos comunes a tener en cuenta al trabajar con ellos.

Explicación principal

Creación de Strings

En Python, los strings se crean utilizando comillas simples (') o dobles ("). Por ejemplo:

nombre = 'Juan'
apellido = "Doe"
mensaje = '''Este es un mensaje multi-linea.
Puede contener saltos de línea y espacios.'''

Manipulación Básica

Concatenación

La concatenación de strings se realiza utilizando el operador +:

nombre_completo = nombre + " " + apellido
print(nombre_completo)  # Salida: Juan Doe

Formateo

Python proporciona varias formas para formatear strings. La forma más antigua es usar el método format():

edad = 30
saludo = "Hola, me llamo {} y tengo {} años.".format(nombre, edad)
print(saludo)  # Salida: Hola, me llamo Juan y tengo 30 años.

Desde Python 3.6, se introdujo f-strings, que son una forma más moderna y legible:

saludo = f"Hola, me llamo {nombre} y tengo {edad} años."
print(saludo)  # Salida: Hola, me llamo Juan y tengo 30 años.

Acceso a caracteres

Los strings son secuencias indexadas, por lo que puedes acceder a cada carácter utilizando su índice:

nombre = "Juan"
print(nombre[0])  # Salida: J
print(nombre[-1])  # Salida: n (último carácter)

Substrings

Para obtener partes de un string, puedes utilizar el slicing. Por ejemplo, nombre[start:end]:

sub_nombre = nombre[2:]  # sub_nombre será "uan"
print(sub_nombre)

Ejemplos Prácticos

Veamos cómo combinar estas técnicas para realizar una tarea común: formatear datos de entrada.

def format_data(nombre, edad):
    return f"{nombre}, tu edad es {edad}."

resultado = format_data("Maria", 25)
print(resultado)  # Salida: Maria, tu edad es 25.

Errores típicos / trampas

  1. Incompatibilidad con tipos de datos numéricos
  • No se pueden concatenar strings y números directamente sin convertir el número a string.
   # Error
   print("Edad: " + 25)  # TypeError: can only concatenate str (not "int") to str

   # Correcto
   print(f"Edad: {str(25)}")
  1. Uso de comillas incorrectas
  • Si un string está dentro de comillas simples, utiliza dobles alrededor del f-string.
   # Error
   print('f"Nombre: {nombre}"')  # SyntaxError: invalid syntax

   # Correcto
   print(f'Nombre: {nombre}')
  1. Omisión del slicing para obtener el último carácter
  • Al acceder al último carácter, no incluir end en el slice.
   # Error
   print(nombre[1:])  # Se pierde el último carácter

   # Correcto
   print(nombre[:-1])

Checklist accionable

  • Convertir números a strings antes de concatenación.
  • Usar f-string para formatear strings con variables.
  • Incluir los índices correctos al slicing para evitar pérdida de datos.
  • Comprobar que se usan las comillas adecuadas (sencillas o dobles).
  • Probar la concatenación y formateo en diferentes casos para asegurar el correcto funcionamiento.

Siguientes pasos

  1. Explora más funciones de strings: Python proporciona una variedad de métodos útiles para manipular strings, como split(), join(), replace(), entre otros.
  2. Pon a prueba tus habilidades: Crea programas que utilicen strings en diversas situaciones, como procesamiento de texto o formateo de datos.
  3. Practica el uso de f-strings y format(): Asegúrate de estar cómodo con ambos métodos para formatear strings.
  4. Revisa la documentación oficial de Python: Para una comprensión más profunda, consulta la documentación oficial sobre strings.

Aprender a trabajar con strings es crucial en programación científica y analítica. Con práctica y familiarización, podrás utilizar esta herramienta efectivamente en tus proyectos.

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).