str.find(sub[, start[, end]])
El método str.find devuelve el índice más bajo en el que se encuentre el substring sub en el bloque str[start:end]. Si el substring sub no se encuentra, devuelve el valor -1. Si no se especifican los argumentos start o end, se toman como valores por defecto el comienzo y el final del string. Si, por el contrario, se especifican, el substring a buscar deberá encontrarse completo dentro del rango.
Véase también str.index
- sub: substring a buscar.
- start: (opcional) comienzo del bloque en el que realizar la búsqueda
- end: (opcional) final del bloque en el que realizar la búsqueda
En este primer ejemplo buscamos un substring existente sin especificar el rango de búsqueda:
s = "Python for Data Science"
print(s.find("Da"))
Si el substring no se encuentra, el método devuelve el valor -1 (obsérvese que la búsqueda es sensible a mayúsculas y minúsculas):
s = "Python for Data Science"
print(s.find("da"))
Lo mismo ocurre si el substring existe pero fuera del rango especificado:
s = "Python for Data Science"
print(s.find("Data", 0, 7))
Si start no es cero y se encuentra la cadena buscada, el índice devuelto es respecto del string completo, no respecto del rango de búsqueda:
s = "Python for Data Science"
print(s[5:15])
print(s.find("Data", 5, 15))