Método Python String find() com exemplos
O que é Python String find()?
Python String find() é uma função disponível na biblioteca Python para encontrar o índice da primeira ocorrência de uma substring da string dada. A função string find() retornará -1 em vez de lançar uma exceção, se a substring especificada não estiver presente na string fornecida.
Neste tutorial do método Python string find(), você aprenderá:
- O que é Python String find()?
- Sintaxe da string Python find()
- Exemplo do método find() com valores padrão
- Exemplo de find() usando o argumento start
- Exemplo de find() usando argumentos de início e fim
- Exemplo do método find() Para encontrar a posição de uma determinada substring em uma string
- String Python rfind()
- índice de string Python()
- Para encontrar a ocorrência total de uma substring
Sintaxe da string Python find()
A sintaxe básica da função find() do Python é a seguinte:
string.find(substring,start,end)
Parâmetros para o método find()
Aqui estão três parâmetros da função String find() em Python:
- substring :a substring que você deseja pesquisar na string fornecida.
- iniciar :(opcional) O valor inicial de onde a busca por substring começará. Por padrão, é 0.
- fim :(opcional) O valor final onde a busca por substring terminará. Por padrão, o valor é o comprimento da string.
Exemplo do método find() com valores padrão
Os parâmetros passados para o método Python find() são substring, ou seja, a string que você deseja pesquisar, iniciar e terminar. O valor inicial é 0 por padrão e o valor final é o comprimento da string.
Neste exemplo, usaremos o método find() em Python com valores padrão.
O método find() procurará a substring e fornecerá a posição da primeira ocorrência da substring. Agora, se a substring estiver presente várias vezes na string fornecida, ela retornará o índice ou a posição da primeira.
Exemplo:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials is at:", mystring.find("Tutorials"))
Resultado:
The position of Tutorials is at: 12
Exemplo de find() usando o argumento start
Você pode pesquisar a substring na string fornecida e especificar a posição inicial, de onde a pesquisa começará. O parâmetro start pode ser usado para o mesmo.
O exemplo especificará a posição inicial como 15, e o método find() no Python iniciará a pesquisa a partir da posição 15. Aqui, a posição final será o comprimento da string e pesquisará até o final da string a partir de 15 posições em diante.
Exemplo:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Resultado:
The position of Tutorials is at 48
Exemplo de find() usando argumentos de início e fim
Usando o parâmetro start e end, tentaremos limitar a pesquisa, em vez de pesquisar a string inteira.
Exemplo:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Resultado:
The position of Tutorials is at 12
Exemplo do método find() Para encontrar a posição de uma determinada substring em uma string
Sabemos que find() nos ajuda a encontrar o índice da primeira ocorrência da substring. Ele retorna -1 se a substring não estiver presente na string fornecida. O exemplo abaixo mostra o índice quando a string está presente e -1 quando não encontramos a substring que estamos procurando.
Exemplo:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Best site is at:", mystring.find("Best site", 5, 40)) print("The position of Guru99 is at:", mystring.find("Guru99", 20))
Resultado:
The position of Best site is at: 27 The position of Guru99 is at: -1
String Python rfind()
A função Python rfind() é semelhante à função find() com a única diferença é que rfind() fornece o índice mais alto para a substring fornecida e find() fornece o menor, ou seja, o primeiro índice. Ambos rfind() e find() retornarão -1 se a substring não estiver presente.
No exemplo abaixo, temos uma string “Meet Guru99 Tutorials Site. Melhor site para tutoriais de Python!” e tentará encontrar a posição de Tutoriais de substring usando find() e rfind(). A ocorrência de Tutoriais na string é duas vezes.
Aqui está um exemplo onde ambos find() e rfind() são usados.
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials using find() : ", mystring.find("Tutorials")) print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))
Resultado:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
A saída mostra que find() fornece o índice da primeira substring de Tutoriais que obtém e rfind() fornece o último índice de Tutoriais de substring.
índice de string Python()
A string index() do Python é uma função que lhe dará a posição da substring dada como find(). A única diferença entre os dois é que index() lançará uma exceção se a substring não estiver presente na string e find() retornará -1.
Aqui está um exemplo de trabalho que mostra o comportamento de index() e find().
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials using find() : ", mystring.find("Tutorials")) print("The position of Tutorials using index() : ", mystring.index("Tutorials"))
Resultado:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Estamos obtendo a mesma posição para find() e index(). Vejamos um exemplo quando a substring dada não está presente na string.
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!" print("The position of Tutorials using find() : ", mystring.find("test")) print("The position of Tutorials using index() : ", mystring.index("test"))
Resultado:
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
No exemplo acima, estamos tentando encontrar a posição da substring “test”. A substring não está presente na string fornecida e, portanto, usando find(), obtemos a posição como -1, mas para index(), ele gera um erro como mostrado acima.
Para encontrar a ocorrência total de uma substring
Para encontrar o número total de vezes que a substring ocorreu na string dada, usaremos a função find() em Python. Irá percorrer a string usando for-loop de 0 até o final da string. Fará uso do parâmetro startIndex para find().
As variáveis startIndex e count serão inicializadas com 0. Inside for –loop verificará se a substring está presente dentro da string fornecida usando find() e startIndex como 0.
O valor retornado de find() se não for -1, atualizará o startIndex para o índice onde a string foi encontrada e também incrementará o valor de contagem.
Aqui está o exemplo de trabalho:
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 )
Resultado:
The total count of substring test is: 6
Resumo
- O método string find() do Python ajuda a encontrar o índice da primeira ocorrência da substring na string fornecida. Ele retornará -1 se a substring não estiver presente.
- Os parâmetros passados para o método find substring do Python são substring, ou seja, a string que você deseja pesquisar, iniciar e terminar. O valor inicial é 0 por padrão e o valor final é o comprimento da string.
- Você pode pesquisar a substring na string fornecida e especificar a posição inicial, de onde a pesquisa começará. O parâmetro start pode ser usado para o mesmo.
- Usando o parâmetro start e end, tentaremos limitar a pesquisa, em vez de pesquisar a string inteira.
- A função Python rfind() é semelhante à função find() com a única diferença é que rfind() fornece o índice mais alto para a substring fornecida e find() fornece o menor, ou seja, o primeiro índice. Tanto rfind() quanto find() retornarão -1 se a substring não estiver presente.
- A string index() do Python é outra função que lhe dará a posição da substring dada como find(). A única diferença entre os dois é que index() lançará uma exceção se a substring não estiver presente na string e find() retornará -1.
- Podemos usar find() para encontrar a contagem da ocorrência total de uma substring em uma determinada string.
python
- Método String Length () em Java:como encontrar com exemplo
- Função Python String strip () com EXEMPLO
- Python String count() com EXEMPLOS
- Python String format() Explique com EXEMPLOS
- Comprimento da string do Python | Exemplo do método len()
- Funções do Python Lambda com EXEMPLOS
- Função Python round() com EXEMPLOS
- Função Python map() com EXEMPLOS
- Python Timeit() com exemplos
- type() e isinstance() em Python com exemplos