Python Método String find() con ejemplos
⚡ Resumen inteligente
Python El método `string find()` es una función integrada que devuelve el índice de la primera aparición de una subcadena dentro de una cadena. Devuelve -1 cuando la subcadena no está presente, evitando así excepciones.

¿Qué es Python ¿Buscar cadenas ()?
Python búsqueda de cadena() es una función disponible en el Python biblioteca para encontrar el índice de la primera aparición de una subcadena dentro de una cadena dada. La función find() devuelve -1 en lugar de lanzar una excepción cuando la subcadena especificada no está presente en la cadena dada. Es una de las PythonEl más utilizado métodos de cadena para localizar texto.
Sintaxis de Python búsqueda de cadena()
La sintaxis básica de la Python La función buscar() es la siguiente:
string.find(substring,start,end)
Parámetros para el método find()
Aquí están los tres parámetros de la función find() en Python:
- subcadena: La subcadena que desea buscar en la cadena dada.
- comienzo: (opcional) El valor inicial desde donde comenzará la búsqueda de la subcadena. Por defecto, es 0.
- final: (opcional) El valor final donde terminará la búsqueda de la subcadena. Por defecto, el valor es la longitud de la cadena.
Ejemplo de método find() con valores predeterminados
Los parámetros pasados a la Python El método find() requiere la subcadena, es decir, la cadena que se desea buscar, junto con un inicio y un final. El valor inicial es 0 por defecto, y el valor final es la longitud de la cadena.
En este ejemplo, utilizaremos el método find() en Python con valores predeterminados.
El método find() buscará la subcadena y devolverá la posición de su primera aparición. Si la subcadena aparece varias veces en la cadena dada, seguirá devolviendo el índice o la posición de la primera.
Ejemplo:
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
Salida:
The position of Tutorials is at: 12
Ejemplo de buscar() usando el argumento de inicio
Puedes buscar la subcadena dentro de la cadena proporcionada y especificar la posición inicial desde donde comenzará la búsqueda. El parámetro `start` se puede utilizar para este propósito.
El siguiente ejemplo especifica la posición inicial como 20 y el método find() en Python La búsqueda comenzará desde la posición 20. En este caso, la posición final será la longitud de la cadena, por lo que la búsqueda se realizará hasta el final de la cadena a partir de la posición 20.
Ejemplo:
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Salida:
The position of Tutorials is at 48
Ejemplo de find() usando argumentos de inicio y fin
Utilizando los parámetros de inicio y fin, podemos limitar la búsqueda en lugar de buscar en toda la cadena.
Ejemplo:
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Salida:
The position of Tutorials is at 12
Ejemplo del método find() para encontrar la posición de una subcadena dada en una cadena.
Sabemos que la función `find()` nos ayuda a encontrar el índice de la primera aparición de una subcadena. Devuelve -1 si la subcadena no está presente en la cadena dada. El siguiente ejemplo muestra el índice cuando la cadena está presente y -1 cuando no se encuentra la subcadena que buscamos.
Ejemplo:
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Mejores site is at:", mystring.find("Mejores site", 5, 40))
print("The position of Guru99 is at:", mystring.find("Guru99", 20))
Salida:
The position of Mejores site is at: 27 The position of Guru99 is at: -1
Python cadena rfind()
El Python La función rfind() es similar a la función find(), con la única diferencia de que rfind() devuelve el índice más alto de la subcadena dada, mientras que find() devuelve el más bajo, es decir, el primer índice. Tanto rfind() como find() devuelven -1 si la subcadena no está presente.
En el ejemplo siguiente, tenemos una cadena “Meet GuruSitio de 99 tutoriales. El mejor sitio para Python Tutoriales!” y tratará de encontrar la posición de la subcadena Tutorials usando find() y rfind(). La subcadena Tutorials aparece dos veces en la cadena.
A continuación se muestra un ejemplo en el que se utilizan tanto find() como rfind().
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))
Salida:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
La salida muestra que find() devuelve el índice de la primera subcadena Tutorials que encuentra, mientras que rfind() devuelve el último índice de la subcadena Tutorials.
Python índice de cadena()
El Python La función `index()` devuelve la posición de una subcadena dada, al igual que `find()`. La única diferencia entre ambas es que `index()` lanza una excepción si la subcadena no está presente en la cadena, mientras que `find()` devuelve -1.
A continuación se muestra un ejemplo práctico que muestra el comportamiento de index() y find().
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using index() : ", mystring.index("Tutorials"))
Salida:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Obtenemos la misma posición tanto para find() como para index(). Veamos un ejemplo cuando la subcadena dada no está presente en la cadena.
mystring = "Meet Guru99 Tutorials Site.Mejores site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("test"))
print("The position of Tutorials using index() : ", mystring.index("test"))
Salida:
The position of Tutorials using find() : -1
Traceback (most recent call last):
File "task1.py", line 3, in <module>
print("The position of Tutorials using index() : ", mystring.index("test"))
ValueError: substring not found
En el ejemplo anterior, intentamos encontrar la posición de la subcadena "test". La subcadena no está presente en la cadena dada, por lo que al usar find() obtenemos la posición -1, pero al usar index() se produce un error, como se muestra arriba.
Para encontrar la aparición total de una subcadena
Para encontrar el número total de veces que una subcadena ha aparecido en la cadena dada, utilizaremos la función find() en PythonRecorreremos la cadena usando un bucle for desde 0 hasta el final de la cadena, utilizando el parámetro startIndex para find().
Las variables startIndex y count se inicializarán a 0. Dentro del bucle for, comprobaremos si la subcadena está presente dentro de la cadena dada usando find() con startIndex como 0.
El valor devuelto por find(), si no es -1, actualizará startIndex al índice donde se encuentra la cadena y también incrementará el valor de count.
Aquí está el ejemplo de trabajo:
my_string = "test string test, test string testing, test string test string"
startIndex = 0
count = 0
for i in range(len(my_string)):
k = my_string.find('test', startIndex)
if(k != -1):
startIndex = k+1
count += 1
k = 0
print("The total count of substring test is: ", count )
Salida:
The total count of substring test is: 6
" Aprender más acerca de Python División de cadena()
