Python Örneklerle String find() Yöntemi
⚡ Akıllı Özet
Python `string find()` yöntemi, bir dize içindeki bir alt dizenin ilk geçtiği yerin dizinini döndürür. Alt dize mevcut olmadığında -1 döndürür ve böylece istisnaların önüne geçer.

Nedir? Python Dize bul()?
Python Dize bulma() Bu, mevcut bir fonksiyondur. Python Verilen bir dizenin içinde bir alt dizenin ilk geçtiği yerin indeksini bulmak için kullanılan bir kütüphanedir. `find()` fonksiyonu, belirtilen alt dize verilen dizede bulunmadığında istisna fırlatmak yerine -1 döndürür. Python'nin en çok kullanılanı dize yöntemleri Metni bulmak için.
sözdizimi Python dize bulma()
Temel sözdizimi Python find() işlevi aşağıdaki gibidir:
string.find(substring,start,end)
find() yöntemine ilişkin parametreler
İşte find() fonksiyonunun üç parametresi: Python:
- alt dizeVerilen dizede aramak istediğiniz alt dize.
- başlama: (isteğe bağlı) Alt dize aramasının başlayacağı başlangıç değeri. Varsayılan olarak 0'dır.
- son: (isteğe bağlı) Alt dize aramasının sona ereceği son değer. Varsayılan olarak, değer dizenin uzunluğudur.
Varsayılan değerlere sahip find() yöntemi örneği
Geçirilen parametreler Python `find()` metodu, aramak istediğiniz dizeye `start` ve `end` değerlerini ekleyerek alt dizeyi tanımlar. `start` değeri varsayılan olarak 0'dır ve `end` değeri dizenin uzunluğudur.
Bu örnekte, find() yöntemini kullanacağız. Python varsayılan değerlerle.
`find()` metodu, alt dizeyi arar ve alt dizenin ilk geçtiği yerin konumunu verir. Alt dize verilen dizede birden fazla kez geçiyorsa, yine de ilk geçtiği yerin dizinini veya konumunu döndürür.
Örnek:
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
Start argümanını kullanan find() örneği
Verilen dizede istediğiniz alt dizeyi arayabilir ve aramanın başlayacağı başlangıç konumunu belirtebilirsiniz. Bu amaçla `start` parametresi kullanılabilir.
Aşağıdaki örnekte başlangıç pozisyonu 20 olarak belirtilmiştir ve find() metodu da bu şekilde çalışır. Python Arama 20. pozisyondan başlayacaktır. Burada bitiş pozisyonu dizenin uzunluğu olacaktır, bu nedenle 20. pozisyondan itibaren dizenin sonuna kadar arama yapılır.
Örnek:
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ş argümanlarını kullanan find() örneği
Başlangıç ve bitiş parametrelerini kullanarak, tüm dizeyi aramak yerine aramayı sınırlandırabiliriz.
Örnek:
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
Bir dizenin içindeki belirli bir alt dizenin konumunu bulmak için kullanılan find() yönteminin örneği
`find()` fonksiyonunun, bir alt dizenin ilk geçtiği yerin indeksini bulmamıza yardımcı olduğunu biliyoruz. Alt dize verilen dizede mevcut değilse -1 döndürür. Aşağıdaki örnek, dize mevcut olduğunda indeksi ve aradığımız alt dize bulunmadığında -1 değerini göstermektedir.
Örnek:
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: 27 The position of Guru99 is at: -1
Python dize rfind()
MKS Python `rfind()` fonksiyonu, `find()` fonksiyonuna benzer; tek fark, `rfind()`'in verilen alt dize için en yüksek indeksi verirken, `find()`'in en düşük, yani ilk indeksi vermesidir. Hem `rfind()` hem de `find()` alt dize mevcut değilse -1 döndürür.
Aşağıdaki örnekte, "Meet" şeklinde bir dize bulunmaktadır. Guru99 Eğitim Videosu Sitesi. En iyi site Python Öğreticiler!” ifadesini çalıştıracak ve find() ve rfind() fonksiyonlarını kullanarak "Tutorials" alt dizesinin konumunu bulmaya çalışacaktır. "Tutorials" alt dizesi dizede iki kez geçmektedir.
Burada hem find() hem de rfind()'in kullanıldığı bir örnek verilmiştir.
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() : 12 The position of Tutorials using rfind() : 48
Çıktı, find() fonksiyonunun "Tutorials" alt dizesinin ilk bulduğu dizinini verdiğini, rfind() fonksiyonunun ise "Tutorials" alt dizesinin son dizinini verdiğini göstermektedir.
Python dize dizini()
MKS Python string index() fonksiyonu, find() fonksiyonuna benzer şekilde, verilen alt dizenin konumunu verir. İkisi arasındaki tek fark, index() fonksiyonunun alt dize dizede bulunmuyorsa istisna fırlatması, find() fonksiyonunun ise -1 döndürmesidir.
Burada index() ve find() işlevlerinin davranışını gösteren çalışan bir örnek verilmiştir.
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() : 12 The position of Tutorials using index() : 12
`find()` ve `index()` fonksiyonlarının her ikisinde de aynı konumu elde ederiz. Verilen alt dizenin dizede bulunmadığı bir örneğe bakalım.
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() : -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
Yukarıdaki örnekte, "test" alt dizesinin konumunu bulmaya çalışıyoruz. Alt dize verilen dizede mevcut değil, bu nedenle `find()` kullanarak konumu -1 olarak buluyoruz, ancak `index()` yukarıda gösterildiği gibi bir hata veriyor.
Bir alt dizenin toplam oluşumunu bulmak için
Verilen dizede bir alt dizenin toplam kaç kez geçtiğini bulmak için, find() fonksiyonunu kullanacağız. Python. find() fonksiyonunun startIndex parametresini kullanarak, dizenin başından sonuna kadar bir for döngüsü ile dizeyi tarayacağız.
`startIndex` ve `count` değişkenleri 0 olarak başlatılacaktır. `for` döngüsünün içinde, `startIndex`'i 0 olarak ayarlayarak `find()` fonksiyonu ile alt dizenin verilen dize içinde olup olmadığını kontrol edeceğiz.
`find()` fonksiyonundan döndürülen değer -1 değilse, `startIndex` değişkeni dizenin bulunduğu dizine güncellenir ve ayrıca `count` değeri artırılır.
İşte çalışma örneği:
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 )
Çıktı:
The total count of substring test is: 6
" Hakkında daha fazla öğren Python Dize bölme()
