logo

String'in Python'da Karakteri olup olmadığını kontrol edin

Her programlama dilinde en sık yapılan işlemlerden biri, belirli bir dizenin bir alt dize içerip içermediğini belirlemektir. Python'un belirli bir dizenin bir karakter içerip içermediğini belirlemek için çok sayıda yöntemi vardır. Karşılaştırma işlemleri için bir araç görevi gören Python'un 'in' operatörü, bir Python dizesinin bir karakter içerip içermediğini belirlemenin en hızlı ve en kolay yoludur. Bir dizenin bir alt dize içerip içermediğini kontrol etmek aynı zamanda find(), index(), count() ve diğerleri gibi diğer Python işlevlerinin kullanımından da yararlanır.

Python'un 'in' Operatörünü Kullanmak

Python'un 'in' operatörü, bir dizenin bir alt dize içerip içermediğini belirlemenin en hızlı ve en kolay yoludur. Dizede karakterler varsa, bu işlem bir boolean true değerini döndürür; aksi takdirde false değerini döndürür.

Kod

java dizesine tamsayı
 # Python program to show how to use the in operator to check if a string contains a substring # Creating a string str='Python Tutorial' print('The string 'tut' is present in the string: ', 'Tut' in str) 

Çıktı:

 The string 'tut' is present in the string: True 

Sol argüman olarak verilen dizge, sağ argüman olarak verilen dizgenin içinde yer alıyorsa 'in' operatörü True değerini verir. Her iki tarafta birer tane olmak üzere iki parametreyi kabul eder. Python'un 'in' operatörü, büyük/küçük harfe duyarlı bir operatör olduğundan Büyük ve Küçük harfleri ayrı ayrı ele alır.

__contains__() İşlevini Kullanma

Python'un String sınıfının __contains__() işlevi ayrıca verilen dizenin bir alt dize içerip içermediğini belirlemenin bir yolunu da sağlar. Python'un 'in' işlemi, örtülü olarak kullanıldığında __contains__() yöntemini çağırır. 'in' ve 'not in' operatörlerinin sağ tarafında bir sınıf nesnesi göründüğünde, davranış __contains__ yöntemiyle tanımlanır. Yapabilsek de bu yöntemi açıkça kullanmamayı seçiyoruz. Baş karakteri alt çizgi olan işlevler anlamsal olarak özel kabul edilse de okunabilirlik açısından 'in' operatörlerinin kullanılması tavsiye edilir.

Kod

 # Python program to show how to use the __contain__ method to check if a string contains a substring # Creating a string string = 'Python Tutorial' print('The string 'tut' is present in the string: ', string.__contains__('Tut')) 

Çıktı:

 The string 'tut' is present in the string: True 

Python'un str.find() Yöntemini Kullanmak

Ayrıca string.find() tekniğini de kullanabilirsiniz. Find() işlevi, verilen dizede bir alt dizenin bulunup bulunmadığını belirler. Bulunursa find() işlevi -1 değerini döndürür; aksi takdirde, dize içindeki alt dizenin başlangıç ​​indeksini verir.

Kod

bitişik açılar
 # Python program to find a character in a string and get its index # Creating a string string = 'Python Tutorial' index = string.find('T') if index != -1: print('The character 'T' is present in the string at: ', index) else: print('The character is not present in the string') 

Çıktı:

 The character 'T' is present in the string at: 7 

Bu yaklaşım kabul edilebilir; ancak str.find() işlevini kullanmak bu görevi tamamlamanın daha az Pythonic bir yoludur. Daha uzun ve biraz daha karmaşık olmasına rağmen yine de görevi yerine getiriyor.

str.count() Yöntemini Kullanma

Bir dize içindeki belirli bir alt dizenin örneklerini saymak istiyorsanız Python count() işlevini kullanın. İşlev, verilen dizede alt dizeyi veya karakteri bulamazsa 0 değerini verir.

java'da dizi.sort

Kod

 # Python program to check a character is present in the string using the count() function # Creating a string string = 'Python Tutorial' count = string.count('o') if count != 0: print(f'The character 'o' is present in the string {count} times.') else: print('The character is not present in the string') 

Çıktı:

 The character 'o' is present in the string 2 times.