Metodo Python String find () con esempi

Sommario:

Anonim

Cos'è Python String find ()?

Python String find () è una funzione disponibile nella libreria Python per trovare l'indice della prima occorrenza di una sottostringa dalla stringa data. La funzione stringa find () restituirà -1 invece di lanciare un'eccezione, se la sottostringa specificata non è presente nella stringa data.

In questo tutorial sul metodo find () di stringhe Python imparerai:

  • Cos'è Python String find ()?
  • Sintassi della stringa Python find ()
  • Esempio di metodo find () con valori predefiniti
  • Esempio di find () utilizzando l'argomento iniziale
  • Esempio di find () utilizzando gli argomenti di inizio e fine
  • Esempio di metodo find () Per trovare la posizione di una data sottostringa in una stringa
  • Stringa Python rfind ()
  • Indice di stringa Python ()
  • Per trovare l'occorrenza totale di una sottostringa

Sintassi della stringa Python find ()

La sintassi di base della funzione find () di Python è la seguente:

string.find(substring,start,end)

Parametri per il metodo find ()

Ecco tre parametri della funzione String find () in Python:
  • sottostringa : la sottostringa che vuoi cercare nella stringa data.
  • inizio : (facoltativo) il valore iniziale da cui inizierà la ricerca della sottostringa. Per impostazione predefinita, è 0.
  • end : (opzionale) il valore finale in cui terminerà la ricerca della sottostringa. Per impostazione predefinita, il valore è la lunghezza della stringa.

Esempio di metodo find () con valori predefiniti

I parametri passati al metodo find () di Python sono sottostringa, ovvero la stringa che si desidera cercare, iniziare e finire. Il valore iniziale è 0 per impostazione predefinita e il valore finale è la lunghezza della stringa.

In questo esempio, useremo il metodo find () in Python con i valori predefiniti.

Il metodo find () cercherà la sottostringa e fornirà la posizione della prima occorrenza della sottostringa. Ora, se la sottostringa è presente più volte nella stringa data, ti restituirà comunque l'indice o la posizione della prima.

Esempio:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials"))

Produzione:

The position of Tutorials is at: 12

Esempio di find () utilizzando l'argomento iniziale

È possibile cercare la sottostringa nella stringa data e specificare la posizione iniziale, da cui inizierà la ricerca. Il parametro di avvio può essere utilizzato per lo stesso.

L'esempio specificherà la posizione iniziale come 15 e il metodo find () in Python inizierà la ricerca dalla posizione 15. Qui, la posizione finale sarà la lunghezza della stringa e cercherà fino alla fine della stringa da 15 posizioni in poi.

Esempio:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 20))

Produzione:

The position of Tutorials is at 48

Esempio di find () utilizzando gli argomenti di inizio e fine

Utilizzando i parametri start e end, proveremo a limitare la ricerca, invece di cercare l'intera stringa.

Esempio:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))

Produzione:

The position of Tutorials is at 12

Esempio di metodo find () Per trovare la posizione di una data sottostringa in una stringa

Sappiamo che find () ci aiuta a trovare l'indice della prima occorrenza della sottostringa. Restituisce -1 se la sottostringa non è presente nella stringa data. L'esempio seguente mostra l'indice quando la stringa è presente e -1 quando non troviamo la sottostringa che stiamo cercando.

Esempio:

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))

Produzione:

The position of Best site is at: 27The position of Guru99 is at: -1

Stringa Python rfind ()

La funzione Python rfind () è simile alla funzione find () con la sola differenza che rfind () fornisce l'indice più alto per la sottostringa data e find () dà il più basso, cioè il primissimo indice. Sia rfind () che find () restituiranno -1 se la sottostringa non è presente.

Nell'esempio seguente, abbiamo una stringa "Meet Guru99 Tutorials Site. Miglior sito per Python Tutorials!" e proverà a trovare la posizione delle sottostringhe Tutorial usando find () e rfind (). L'occorrenza di Tutorial nella stringa è due volte.

Ecco un esempio in cui vengono utilizzati sia find () che rfind ().

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"))

Produzione:

The position of Tutorials using find() : 12The position of Tutorials using rfind() : 48

L'output mostra che find () fornisce l'indice della primissima sottostringa Tutorials che ottiene, e rfind () fornisce l'ultimo indice delle sottostringhe Tutorials.

Indice di stringa Python ()

La stringa Python index () è una funzione che ti darà la posizione della sottostringa data proprio come find (). L'unica differenza tra i due è che index () genererà un'eccezione se la sottostringa non è presente nella stringa e find () restituirà -1.

Ecco un esempio funzionante che mostra il comportamento di 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"))

Produzione:

The position of Tutorials using find() : 12The position of Tutorials using index() : 12

Stiamo ottenendo la stessa posizione sia per find () che per index (). Vediamo un esempio quando la sottostringa data non è presente nella stringa.

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"))

Produzione:

The position of Tutorials using find() : -1Traceback (most recent call last):File "task1.py", line 3, in print("The position of Tutorials using index() : ", mystring.index("test"))ValueError: substring not found

Nell'esempio sopra, stiamo cercando di trovare la posizione della sottostringa "test". La sottostringa non è presente nella stringa data, e quindi usando find (), otteniamo la posizione -1, ma per index (), genera un errore come mostrato sopra.

Per trovare l'occorrenza totale di una sottostringa

Per trovare il numero totale di volte in cui la sottostringa si è verificata nella stringa data, utilizzeremo la funzione find () in Python. Eseguirà un ciclo attraverso la stringa usando for-loop da 0 fino alla fine della stringa. Utilizzerà il parametro startIndex per find ().

Le variabili startIndex e count verranno inizializzate a 0. Inside for -loop controllerà se la sottostringa è presente all'interno della stringa data usando find () e startIndex come 0.

Il valore restituito da find () se diverso da -1, aggiornerà startIndex all'indice in cui si trova la stringa e incrementerà anche il valore di conteggio.

Ecco l'esempio di lavoro:

my_string = "test string test, test string testing, test string test string"startIndex = 0count = 0for i in range(len(my_string)):k = my_string.find('test', startIndex)if(k != -1):startIndex = k+1count += 1k = 0print("The total count of substring test is: ", count )

Produzione:

The total count of substring test is: 6

Sommario

  • Il metodo Python string find () aiuta a trovare l'indice della prima occorrenza della sottostringa nella stringa data. Restituirà -1 se la sottostringa non è presente.
  • I parametri passati al metodo find sottostringa di Python sono sottostringa, ovvero la stringa che si desidera cercare, iniziare e finire. Il valore iniziale è 0 per impostazione predefinita e il valore finale è la lunghezza della stringa.
  • È possibile cercare la sottostringa nella stringa data e specificare la posizione iniziale, da cui inizierà la ricerca. Il parametro di avvio può essere utilizzato per lo stesso.
  • Utilizzando i parametri start e end, proveremo a limitare la ricerca, invece di cercare l'intera stringa.
  • La funzione Python rfind () è simile alla funzione find () con la sola differenza che rfind () fornisce l'indice più alto per la sottostringa data e find () dà il più basso, cioè il primissimo indice. Sia rfind () che find () restituiranno -1 se la sottostringa non è presente.
  • La stringa Python index () è ancora un'altra funzione che ti darà la posizione della sottostringa data proprio come find (). L'unica differenza tra i due è che index () genererà un'eccezione se la sottostringa non è presente nella stringa e find () restituirà -1.
  • Possiamo usare find () per trovare il conteggio delle occorrenze totali di una sottostringa in una data stringa.