Python String find () Örneklerle Yöntemi

İçindekiler:

Anonim

Python String find () nedir?

Python Dize find () , belirli bir dizeden bir alt dizenin ilk oluşumunun dizinini bulmak için Python kitaplığında kullanılabilen bir işlevdir. Belirtilen dizede belirtilen alt dize yoksa, dize find () işlevi bir istisna atmak yerine -1 döndürür.

Bu Python dizesi find () yöntemi eğitiminde şunları öğreneceksiniz:

  • Python String find () nedir?
  • Python dizesi sözdizimi find ()
  • Varsayılan değerlerle find () yöntemi örneği
  • Başlangıç ​​bağımsız değişkenini kullanan find () örneği
  • Başlangıç ​​ve bitiş bağımsız değişkenlerini kullanan find () örneği
  • Find () yöntemi örneği Bir dizedeki belirli bir alt dizenin konumunu bulmak için
  • Python dizesi rfind ()
  • Python dize dizini ()
  • Bir alt dizenin toplam oluşumunu bulmak için

Python dizesi sözdizimi find ()

Python find () fonksiyonunun temel sözdizimi aşağıdaki gibidir:

string.find(substring,start,end)

Find () yöntemi için parametreler

Python'da String find () fonksiyonunun üç parametresi:
  • alt dize : Verilen dizede aramak istediğiniz alt dize.
  • başlangıç : (isteğe bağlı) Alt dize aramasının başlayacağı yerden başlangıç ​​değeri. Varsayılan olarak 0'dır.
  • end : (isteğe bağlı) Alt dize aramasının biteceği bitiş değeri. Varsayılan olarak değer, dizenin uzunluğudur.

Varsayılan değerlerle find () yöntemi örneği

Python find () yöntemine iletilen parametreler alt dizedir, yani aramak, başlatmak ve bitirmek istediğiniz dizedir. Başlangıç ​​değeri varsayılan olarak 0'dır ve bitiş değeri dizenin uzunluğudur.

Bu örnekte, varsayılan değerlerle Python'da find () yöntemini kullanacağız.

Find () yöntemi alt dizeyi arayacak ve alt dizenin ilk geçtiği yerin konumunu verecektir. Şimdi, alt dize verilen dizede birden çok kez mevcutsa, yine de size ilkinin dizinini veya konumunu döndürür.

Misal:

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

Çıktı:

The position of Tutorials is at: 12

Başlangıç ​​bağımsız değişkenini kullanan find () örneği

Verilen dizedeki alt dizeyi arayabilir ve aramanın başlayacağı başlangıç ​​konumunu belirtebilirsiniz. Başlangıç ​​parametresi aynı şekilde kullanılabilir.

Örnek, başlangıç ​​konumunu 15 olarak belirleyecektir ve Python yöntemindeki find () aramaya konum 15'ten başlayacaktır. Burada, son konum dizenin uzunluğu olacak ve dizinin sonuna kadar 15 konumdan arama yapacaktır. ileriye.

Misal:

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

Çıktı:

The position of Tutorials is at 48

Başlangıç ​​ve bitiş bağımsız değişkenlerini kullanan find () örneği

Başlangıç ​​ve bitiş parametresini kullanarak tüm dizeyi aramak yerine aramayı sınırlandırmaya çalışacağız.

Misal:

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

Çıktı:

The position of Tutorials is at 12

Find () yöntemi örneği Bir dizedeki belirli bir alt dizenin konumunu bulmak için

Find () 'ın, alt dizenin ilk oluşumunun dizinini bulmamıza yardımcı olduğunu biliyoruz. Alt dizge verilen dizede yoksa -1 döndürür. Aşağıdaki örnek, dizge mevcut olduğunda dizini ve aradığımız alt dizeyi bulamadığımızda -1'i gösterir.

Misal:

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

Çıktı:

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

Python dizesi rfind ()

Python işlevi rfind (), find () işlevine benzer, tek fark, rfind () 'nin verilen alt dizge için en yüksek dizini vermesi ve find ()' ın en düşük olanı, yani ilk dizini vermesidir. Alt dize yoksa hem rfind () hem de find () -1 döndürür.

Aşağıdaki örnekte, "Guru99 Eğitim Sitesi ile Tanışın. Python Eğitimleri için en iyi site!" ve find () ve rfind () kullanarak alt dize Öğreticilerinin konumunu bulmaya çalışacaktır. Dizede Öğreticilerin oluşumu iki katıdır.

Burada hem find () hem de rfind () kullanılan bir örnek var.

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

Çıktı:

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

Çıktı, find () öğesinin aldığı ilk Tutorials alt dizesinin dizinini verdiğini ve rfind () öğesinin son alt dize Tutorials dizinini verdiğini gösterir.

Python dize dizini ()

Python dizge indeksi (), size tıpkı find () gibi verilen alt dizenin konumunu veren bir işlevdir. İkisi arasındaki tek fark, dizgede alt dize yoksa index () bir istisna atar ve find () -1 döndürür.

İşte index () ve find () davranışını gösteren çalışan bir örnek.

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

Çıktı:

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

Hem find () hem de index () için aynı pozisyonu alıyoruz. Verilen alt dize dizede bulunmadığında bir örnek görelim.

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

Çıktı:

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

Yukarıdaki örnekte, "test" alt dizesinin konumunu bulmaya çalışıyoruz. Alt dize verilen dizede mevcut değildir ve bu nedenle find () kullanarak konumu -1 olarak alırız, ancak index () için yukarıda gösterildiği gibi bir hata atar.

Bir alt dizenin toplam oluşumunu bulmak için

Verilen dizede alt dizenin toplam kaç kez meydana geldiğini bulmak için Python'da find () işlevini kullanacağız. 0'dan dizenin sonuna kadar for-döngüsünü kullanarak dizge boyunca döngü oluşturur. Find () için startIndex parametresini kullanacaktır.

StartIndex ve count değişkenleri 0 olarak başlatılacaktır. -Loop için Inside, find () ve startIndex kullanılarak verilen dizge içinde alt dizenin mevcut olup olmadığını kontrol edecektir.

Find () 'dan döndürülen değer -1 değilse, startIndex değerini dizenin bulunduğu dizine günceller ve ayrıca count değerini artırır.

İşte çalışan örnek:

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 )

Çıktı:

The total count of substring test is: 6

Özet

  • Python string find () yöntemi, verilen dizedeki alt dizenin ilk oluşumunun dizinini bulmaya yardımcı olur. Alt dize yoksa -1 döndürür.
  • Python find substring metoduna aktarılan parametreler substring yani aramak, başlatmak ve bitirmek istediğiniz dizedir. Başlangıç ​​değeri varsayılan olarak 0'dır ve bitiş değeri dizenin uzunluğudur.
  • Verilen dizedeki alt dizeyi arayabilir ve aramanın başlayacağı başlangıç ​​konumunu belirtebilirsiniz. Başlangıç ​​parametresi aynı şekilde kullanılabilir.
  • Başlangıç ​​ve bitiş parametresini kullanarak tüm dizeyi aramak yerine aramayı sınırlandırmaya çalışacağız.
  • Python işlevi rfind (), find () işlevine benzer, tek fark, rfind () 'nin verilen alt dizge için en yüksek dizini vermesi ve find ()' ın en düşük olanı, yani ilk dizini vermesidir. Alt dize yoksa hem rfind () hem de find () -1 döndürür.
  • Python dizge indeksi (), size tıpkı find () gibi verilen alt dizenin konumunu verecek başka bir işlevdir. İkisi arasındaki tek fark, dizgede alt dize yoksa index () bir istisna atar ve find () -1 döndürür.
  • Belirli bir dizede bir alt dizenin toplam oluşum sayısını bulmak için find () işlevini kullanabiliriz.