Saltar al contenido principal

Métodos de cadenas

Algunas de las funciones y métodos más utilizados para cadenas en Python se presentan a continuación. Tanto los métodos como las funciones siempre crean una nueva cadena, debido a que las cadenas son inmutables.

Minúsculas y mayúsculas

Existen varios métodos que permiten modificar las mayúsculas y minúculas de una cadena de texto:

  • str.upper(): convierte la cadena a mayúsculas.
  • str.lower(): convierte la cadena a minúsculas.
  • str.capitalize(): convierte la cadena a minúsculas excepto el primer caracter.
  • str.title(): convierte la cadena a minúsculas excepto el primer caracter de cada palabra.
texto = "Bienvenido a Python"
texto.upper() # "BIENVENIDO A PYTHON"
texto.lower() # "bienvenido a python"
texto.capitalize() # "Bienvenido a python"
texto.title() # "Bienvenido A Python"

Eliminar espacios en blanco al inicio o final

Existen varios métodos para eliminar espacios en blanco:

  • str.strip(): elimina espacios al inicio y final de la cadena.
  • str.lstrip(): elimina espacios al inicio (left).
  • str.rstrip(): elimina espacios al final (right).
texto = "   ¡Hola, mundo!   "
texto.lstrip() # "¡Hola, mundo! "
texto.rstrip() # " ¡Hola, mundo!"
texto.strip() # "¡Hola, mundo!"

Buscar posición

str.find(subcadena) y str.index(subcadena) encuentran la posición de la primera aparición de una subcadena en la cadena.

texto = "Python es divertido"
posicion = texto.find("div")

Sustitución

str.replace(antiguo, nuevo) sustituye todas las ocurrencias de una subcadena con otra.

texto = "¡Hola, mundo!"
modificado = texto.replace("mundo", "Python") # "¡Hola, Python!"

Podemos realizar una sustitución por una cadena vacía para borrar una subcadena.

texto = "hola, mundo!"
modificado = texto.replace("o", "") # "hla, mund!"

Esta función admite un tercer argumento, str.replace(antiguo, nuevo, veces_reemplazo). Este tercer argumento indica cuántas veces se debe realizar la sustitución. Si este tiene el valor 1, solo se sustituirá la primera aparición.

texto = "hola, mundo!"
modificado = texto.replace("o", "ho") # "hola, mundo!"

Dividir

str.split(separador) divide la cadena en una lista de subcadenas utilizando el separador indicado.

texto = "Python es divertido"
palabras = texto.split(" ")

Comparar final

La función endswith(final) se utiliza para comprobar si una cadena termina con una subcadena. Devuelve verdadero si termina con la subcadena y falso en caso contrario.

cadena = "Hola mundo"
cadena.endswith("mundo") # True

Puedes utilizar endswith() para realizar tareas como comprobar si un archivo tiene cierta extensión, validar entradas de texto, entre otras cosas.