Método find string

Hay dos opciones para encontrar un subtring dentro de una string en Python, find() y rfind().

Cada uno retorna la posición en la que se encuentre la substring. La diferencia entre los dos, es que find() retorna la posición de la primera similitud de la substring y rfind() retorna la última posición de la similitud de la substring.

Nosotros podemos proveer algunos argumentos opcionales de inicio y fin para limitar la búsqueda de la substring, dentro de los limites del string.

Ejemplo:

>>> cadenaDeTexto = "Es peor cometer una injusticia que padecerla porque quien la comete se convierte en injusto y quien la padece no."
>>> string.find('quien')
52
>>> string.rfind('quien')
94
find() y rfind() methods Python3.7

Si, el substring no es encontrado retorna -1.

>>> string = "Es peor cometer una injusticia que padecerla porque quien la comete se convierte en injusto y quien la padece no."
>>> string.find('quien', 53)  # find 'quien' ubicado desde la posición 52 y 94
-1
Error find() Python3.7

Más información:

Método find() string documentación.

Método string join

El método str.join(iterable)  es usado para unir todos los elementos de un iterable con un espefico string str in Python. Si, el iterable no contiene ningún valor en los strings, Esto conduce a un TypeError exception.

iterable: Todos los iterables de un string. Podrian ser listas, tuplas de strings o un string plano.

Ejemplos

Concatena la lista de strings con ":"

print(":".join(["freeCodeCamp", "es", "divertido"]))
Lista de strings - Python3.7

Resultado:

freeCodeCamp:es:divertido
Salida

Concatena una tupla de strings con: " y "

print(" y ".join(["A", "B", "C"]))
Tupla de strings - Python3.7

Resultado:

A y B y C
Salida

Inserta un  " "  después de cada carácter en un string

print(" ".join("freeCodeCamp"))
Python3.7

Resultado:

f r e e C o d e C a m p
Salida

Concatenando una lista de caracteres

listChar = ['p','r','o','g','r','a','m']  
print("".join(listChar))
Lista de caracteres - Python3.7

Resultado:

program
Salida

Uniendo sets

test = {'2', '1', '3'}
s = ', '
print(s.join(test))
Union de sets - Python3.7

Resultado:

2, 3, 1
Salida

Más información:

Documentación Python método String Join

Método string replace

El mistr.replace(viejoString, nuevoString, numeroDeVeces) método es usado para reemplazar el substring: viejoString con el nuevoString  que se reemplaza un numerodeveces . Éste método retorna una nueva copia del string reemplazado. El string original  mistr no se ha modificado.

Ejemplos

  1. Reemplaza las ocurrecencias "es" con "FUE"
string = "Esto es bonito. Esto es bueno."
newString = string.replace("es","FUE")
print(newString)
Reemplazo de strings - Python3.7

Resultado:

Esto FUE bonito. Esto FUE bueno.
Salida
  1. Reemplaza las primeras dos ocurrencias  "es" con "FUE"
string = "Para mi esto es bonito. Esto es bueno."
nuevoString = string.replace("es","FUE", 2)
print(nuevoString)
Salida

Resultado:

Para mi FUEto FUE bonito. Esto es bueno.
Salida

Más información:

Leer más información sobre el reemplazo de strings in the Python docs.

Método string strip

Hay 3 opciones para hacer eliminación de caracteres (stripping) de un string en Python: lstrip(), rstrip() y strip().

Cada uno retorna la posición del string con los caracteres removidos, al inicio y final o ambos. Si, no existen argumentos dados, por default para cortar o eliminar sera un espacio en blanco.

Ejemplo:

>>> string = '   Hola, Mundo!    '
>>> cortar_izquierda = string.lstrip()
>>> cortar_izquierda
'Hola, Mundo!    '
>>> cortar_derecha = string.rstrip()
>>> cortar_derecha
'   Hola, Mundo!'
>>> cortar_ambos_lados = string.strip()
>>> cortar_ambos_lados
'Hola, Mundo!'
Remover caracter de la izquierda, derecha y ambos - Python3.7

Como argumento opcional de strip, nosotro podemos proveer todos los caracteres que deseemos hacer stripping o eliminar.

>>> url = 'www.ejemplo.com/'
>>> url.strip('w./')
'ejemplo.com'
strip con argumentos dados - Python3.7

Sin embargo noten que el solamente el primer . fue eliminado del string. Esto es porque el strip function, solamente hace strip priorizando los argumentos de a izquierda a derecha. Desde w viene antes el . , entonces hace stripping, luego sigue con cada argumento.

Método string split

El split() function, es usado usualmente para dividir strings.

El  método split()

Template: string.split(separador, maxdivision)

separador: El delimitador del string. Tú divides el string basado en estos caracteres. Por ejemplo (" "), (":"), (";"), etc.

maxdivision: El número de veces a dividir el string basados en el separador. Si, no especificamos éste número o ponemos -1, el string tomara todas las occurrencias del separator.

Este metodo retorna una lista de substrings delimitados por el separator.

Ejemplos

String dividido con espacio en blanco " "

string = "freeCodeCamp is fun."
print(string.split(" "))
Delimitador (" ") - Python3.7

Resultado:

['freeCodeCamp', 'is', 'fun.']
Salida

String dividido con coma: ","

string = "freeCodeCamp, es divertido, y informativo"
print(string.split(","))
Delimitador (",") - Python3.7

Resultado:

['freeCodeCamp', 'es divertido', ' y informativo']
resultado

separator no especificado

string = "freeCodeCamp es divertido y informativo"
print(string.split())
split(empty) - Python3.7

Resultado:

['freeCodeCamp', 'es', 'divertido', 'y', 'informativo']
Salida

Nota: Si el separator no es espeficado, Entonces el string se divide con el carácter por default el cual es  " ".  Tomara todas las ocurrencias del delimitador " ".

string = "freeCodeCamp        es     divertido y    informativo"
print(string.split())
Delimitador " " por default - Python3.7

Resultado:

['freeCodeCamp', 'es', 'divertido', 'y', 'informativo']
Salida

Divide el string usando maxdivision. Aquí nosotros dividimos el string con " " dos veces:

string = "freeCodeCamp es divertido y informativo"
print(string.split(" ", 2))
Número de veces de la ocurrencia - Python3.7

Resultado:

['freeCodeCamp', 'es', 'divertido y informativo']
resultado

Traducido del artículo - Python String Methods Explained with Examples