3 usuarios conectados

Tipos y estructuras de datos en Python. Cadenas

Comparte esto

Las cadenas (str) en Python son secuencias inmutables de caracteres Unicode. Son fundamentales para representar texto y se utilizan ampliamente en la programación. Vamos a explorar las operaciones, el formateo y los métodos que Python ofrece para trabajar con cadenas.

Operaciones con Cadenas:

  1. Concatenación (+): Se utiliza el operador + para unir dos o más cadenas.

    Python
     
    saludo = "Hola"
    nombre = "Mundo"
    saludo_completo = saludo + ", " + nombre + "!"
    print(saludo_completo)  # Hola, Mundo!
    
  2. Repetición (*): Se utiliza el operador * para repetir una cadena un cierto número de veces.

    Python
     
    guiones = "-" * 10
    print(guiones)  # ----------
    saludo_repetido = "Hola " * 3
    print(saludo_repetido)  # Hola Hola Hola
    
  3. Indexación: Se puede acceder a caracteres individuales de una cadena utilizando su índice (que comienza en 0). También se pueden usar índices negativos para acceder desde el final de la cadena (-1 es el último carácter).

    Python
     
    mi_cadena = "Python"
    primer_caracter = mi_cadena[0]   # 'P'
    tercer_caracter = mi_cadena[2]   # 't'
    ultimo_caracter = mi_cadena[-1]  # 'n'
    penultimo_caracter = mi_cadena[-2] # 'o'
    
  4. Slicing: Se puede extraer una subcadena (slice) de una cadena utilizando la notación de slicing [inicio:fin:paso].

    Python
     
    mi_cadena = "Programacion"
    subcadena1 = mi_cadena[0:7]   # 'Program' (desde el índice 0 hasta el 6)
    subcadena2 = mi_cadena[8:]    # 'acion' (desde el índice 8 hasta el final)
    subcadena3 = mi_cadena[:4]    # 'Prog' (desde el inicio hasta el índice 3)
    subcadena4 = mi_cadena[::2]   # 'Poaaio' (cada segundo carácter)
    subcadena5 = mi_cadena[::-1]  # 'noicamargorP' (cadena invertida)
    
  5. Pertenencia (in, not in): Se utilizan para verificar si una subcadena está presente en una cadena.

    Python
     
    mi_cadena = "Python es genial"
    print("Python" in mi_cadena)     # True
    print("Java" in mi_cadena)       # False
    print("genial" not in mi_cadena) # False
    

Formateo de Cadenas:

Python ofrece varias formas de formatear cadenas para incluir variables y expresiones de manera legible:

  1. Concatenación (como vimos antes): Puede ser menos legible para cadenas complejas.

  2. Formateo con % (estilo antiguo): Utiliza operadores como %s (para cadenas), %d (para enteros), %f (para flotantes), etc.

    Python
     
    nombre = "Ana"
    edad = 25
    mensaje = "Mi nombre es %s y tengo %d años." % (nombre, edad)
    print(mensaje)  # Mi nombre es Ana y tengo 25 años.
    
    precio = 19.99
    mensaje_precio = "El precio es %.2f euros." % precio
    print(mensaje_precio)  # El precio es 19.99 euros.
    
  3. Método .format() (estilo moderno): Utiliza llaves {} como marcadores de posición que se pueden reemplazar con valores.

    Python
     
    nombre = "Carlos"
    edad = 32
    mensaje = "Mi nombre es {} y tengo {} años.".format(nombre, edad)
    print(mensaje)  # Mi nombre es Carlos y tengo 32 años.
    
    # Se pueden usar índices para especificar el orden:
    mensaje_ordenado = "Tengo {1} años y mi nombre es {0}.".format(nombre, edad)
    print(mensaje_ordenado)  # Tengo 32 años y mi nombre es Carlos.
    
    # Se pueden usar nombres de clave para mayor claridad:
    mensaje_clave = "Mi nombre es {nombre} y tengo {edad} años.".format(nombre=nombre, edad=edad)
    print(mensaje_clave)  # Mi nombre es Carlos y tengo 32 años.
    
    precio = 29.50
    mensaje_formato = "El precio es {:.2f} euros.".format(precio)
    print(mensaje_formato)  # El precio es 29.50 euros.
    
  4. f-strings (string literals formateados) (Python 3.6+): La forma más moderna y legible de formatear cadenas. Se prefija la cadena con f o F y se colocan las expresiones dentro de llaves {}.

    Python
     
    nombre = "Elena"
    edad = 28
    mensaje = f"Mi nombre es {nombre} y tengo {edad} años."
    print(mensaje)  # Mi nombre es Elena y tengo 28 años.
    
    precio = 35.75
    mensaje_formato = f"El precio es ${precio:.2f}."
    print(mensaje_formato)  # El precio es $35.75.
    
    operacion = f"2 + 2 = {2 + 2}"
    print(operacion)  # 2 + 2 = 4
    

Métodos de Cadenas:

Python ofrece una gran cantidad de métodos integrados para manipular y trabajar con cadenas. Aquí tienes algunos de los más comunes:

Estos son solo algunos de los muchos métodos disponibles para trabajar con cadenas en Python. La documentación oficial de Python tiene una lista completa. Dominar las operaciones, el formateo y los métodos de cadenas es esencial para manipular texto de manera efectiva en tus programas Python