Métodos de Strings en Python

Exploraremos métodos útiles para manipular cadenas de texto.

1. Método upper()

Convierte todas las letras de un string en mayúsculas.


texto = "Hola, mundo"
print(texto.upper())  # "HOLA, MUNDO"
    

2. Método lower()

Convierte todas las letras en minúsculas.


texto = "Hola, Mundo"
print(texto.lower())  # "hola, mundo"
    

3. Método strip()

Elimina espacios en blanco al inicio y al final.


texto = "  Python  "
print(texto.strip())  # "Python"
    

4. Método replace()

Reemplaza una subcadena por otra.


texto = "Me gusta Python"
print(texto.replace("Python", "Java"))  # "Me gusta Java"
    

5. Método split()

Divide un string en una lista usando un separador.


texto = "manzana,banana,uva"
print(texto.split(","))  # ['manzana', 'banana', 'uva']
    

6. Método join()

Une los elementos de una lista en un solo string con un separador.


lista = ["Python", "es", "genial"]
print(" ".join(lista))  # "Python es genial"
    

7. Método find()

Busca una subcadena y devuelve su índice (o -1 si no la encuentra).


texto = "Aprender Python"
print(texto.find("Python"))  # 9
print(texto.find("Java"))    # -1
    

8. Método count()

Cuenta cuántas veces aparece una subcadena en el texto.


texto = "banana banana banana"
print(texto.count("banana"))  # 3
    

9. Método startswith()

Verifica si una cadena comienza con una subcadena específica.


texto = "Hola, mundo"
print(texto.startswith("Hola"))  # True
print(texto.startswith("Mundo"))  # False
    

10. Método endswith()

Verifica si una cadena termina con una subcadena específica.


texto = "archivo.txt"
print(texto.endswith(".txt"))  # True
print(texto.endswith(".jpg"))  # False
    

11. Método isdigit()

Verifica si todos los caracteres de una cadena son dígitos.


texto = "12345"
print(texto.isdigit())  # True
print("123a".isdigit())  # False
    

12. Método isalpha()

Verifica si todos los caracteres de una cadena son letras.


texto = "Python"
print(texto.isalpha())  # True
print("Python3".isalpha())  # False
    

13. Método isalnum()

Verifica si todos los caracteres son letras o números.


texto = "Python3"
print(texto.isalnum())  # True
print("Python 3".isalnum())  # False (espacio no es alfanumérico)
    

14. Método title()

Convierte la primera letra de cada palabra en mayúscula.


texto = "bienvenidos a python"
print(texto.title())  # "Bienvenidos A Python"
    

15. Método capitalize()

Convierte solo la primera letra de la cadena en mayúscula.


texto = "python es genial"
print(texto.capitalize())  # "Python es genial"
    

Método translate()

El método translate() se usa para reemplazar caracteres en una cadena usando una tabla de traducción.

¿Cómo funciona translate()?

Para usar translate(), primero creamos una tabla con str.maketrans().


# Crear una tabla de traducción
tabla = str.maketrans("aeiou", "12345")

# Aplicar la traducción a una cadena
texto = "hola amigos"
nuevo_texto = texto.translate(tabla)

print(nuevo_texto)  # h4l1 1m3g4s
    

Eliminar caracteres con translate()

Podemos eliminar caracteres asignándoles None en la tabla de traducción.


# Crear una tabla de eliminación
tabla = str.maketrans("", "", "aeiou")

# Aplicar la traducción
texto = "hola amigos"
nuevo_texto = texto.translate(tabla)

print(nuevo_texto)  # hl mgs
    

Eliminar puntuación con translate()

Podemos usar translate() para eliminar signos de puntuación en un texto.

Ejemplo: Eliminar puntuación

Usamos str.maketrans() pasando un diccionario vacío y los caracteres a eliminar.


import string

# Crear una tabla para eliminar puntuación
tabla = str.maketrans("", "", string.punctuation)

# Texto con puntuación
texto = "¡Hola! ¿Cómo estás?"

# Aplicar la traducción
texto_limpio = texto.translate(tabla)

print(texto_limpio)  # Hola Como estas
    

¿Cómo funciona?