Python

Python String Kullanımı

Bu yazıda Python’da dizeleri(string) oluşturmayı, biçimlendirmeyi, değiştirmeyi ve silmeyi öğreneceksiniz. Ayrıca, çeşitli dizgi işlemleri ve işlevleri ile tanışacaksınız.

Python’da String nedir?

Bir dize, bir karakter dizisidir.

Bir karakter sadece bir semboldür. Örneğin, Türkçe dili 29 karaktere sahiptir.

Bilgisayarlar karakterlerle ilgilenmezler, sayılarla (ikili) ilgilenirler. Ekranınızda karakterler görebilseniz bile, dahili olarak 0’lar ve 1’lerin bir kombinasyonu olarak depolanır ve işlenir.

Karakterin bu sayıya dönüştürülmesi kodlama olarak adlandırılır ve ters işlem kod çözme işlemidir. ASCII ve Unicode, kullanılan popüler kodlamalardan bazılarıdır.

Python’da bir dize, bir Unicode karakter dizisidir. Unicode, tüm dillerdeki her karakteri dahil etmek ve kodlamada tekdüzelik getirmek için tanıtıldı. Python Unicode‘dan Unicode hakkında bilgi edinebilirsiniz.

Python’da bir String nasıl oluşturulur?

Stringler, karakterleri tek tırnak veya çift tırnak içine alarak oluşturulabilir. Python’da üçlü tırnaklar bile kullanılabilir, ancak genellikle çok satırlı dizeleri ve dokümanları temsil etmek için kullanılır.

Çıktı:

Bir dizedeki karakterlere nasıl erişilir?

İndekslemeyi kullanarak tek tek karakterlere ve dilimlemeyi kullanarak bir dizi karaktere erişebiliriz. Dizin, 0‘dan başlar. Dizin aralığı dışındaki bir karaktere erişmeye çalışmak bir IndexError hatası oluşturacaktır. Dizin bir int olmalıdır. Float veya diğer türleri kullanamayız, bu TypeError ile sonuçlanacaktır.

Python, dizileri için negatif indekslemeye izin verir.

-1 dizini son öğeye, -2 ikinci son öğeye ve bu böyle devam eder. Dilimleme operatörünü (kolon) kullanarak bir dizedeki bir dizi öğeye erişebiliriz.

Çıktı:

Aralık dışındaki bir dizine erişmeye çalışırsak veya tam sayı dışında sayılar kullanırsak, hata alırız.

Bir dizi nasıl değiştirilir veya silinir?

Dizeler değişmezdir. Bu, bir dizenin elemanlarının atandıktan sonra değiştirilemeyeceği anlamına gelir. Farklı dizeleri aynı isme yeniden atayabiliriz.

Bir dizeden karakterleri silemeyiz veya kaldıramayız. Ancak dizeyi tamamen silmek, del anahtar sözcüğünü kullanarak mümkündür.

Python String İşlemleri

Python’da en çok kullanılan veri türlerinden biri yapan dizelerle gerçekleştirilebilen birçok işlem vardır.

Python’da bulunan veri türleri hakkında daha fazla bilgi edinmek için şu adresi ziyaret edin: Python Veri Türleri

İki veya Daha Fazla Dizenin Birleştirilmesi

İki veya daha fazla dizenin tek bir dizide birleştirilmesine bitiştirme denir.

+ Operatörü bunu Python’da yapar. Basitçe iki dize değişmezini birleştirir.

* Operatörü, dizeyi belirli sayıda tekrarlamak için kullanılabilir.

Yukarıdaki programı çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:

İki dize değişmezini birlikte yazmak onları + operatörü gibi birleştirir.

Dizeleri farklı satırlarda birleştirmek istersek parantez kullanabiliriz.

Bir String’de Hareket Etme

for loop kullanarak bir dizeyi yineleyebiliriz. İşte bir dizedeki ‘a’ların sayısını saymak için bir örnek.

Yukarıdaki kod çalıştırıldığında aşağıdaki ekran çıktısı alınır.

String Üyelik Testi

in anahtar kelimesini kullanarak bir dizede başka bir dizenin var olup olmadığını test edebiliriz.

Python’da Yerleşik Fonksiyonlar ile Çalışma

Sırayla çalışan çeşitli yerleşik işlevler dizelerle de çalışır.

Yaygın olarak kullanılanlardan bazıları enumerate() ve len() ‘dir. Enumerate() işlevi bir numaralandırma nesnesi döndürür. Dizedeki tüm öğelerin dizinini ve değerini çiftler halinde içerir. Bu, yineleme için yararlı olabilir.

İlginizi çekebilir: Python str() Kullanımı

Benzer şekilde len(), dizenin uzunluğunu (karakter sayısını) döndürür.

Yukarıdaki kodun ekran çıktısı şöyle olacaktır.

Python String Formatlama

Kaçış Karakteri (Escape Karakter)

Eğer  “Ali’bin kalemi var mı?” gibi bir metin yazmak istersek ne çift tırnak ne de tek tırnak çalışmayacaktır. Hem çift hem de tek tırnak için SyntaxError hatası alırız.

Bu sorunu aşmanın bir yolu, üçlü tırnak kullanmaktır. Alternatif olarak, kaçış dizilerini kullanabiliriz.

Bir kaçış dizisi ters eğik çizgiyle başlar ve farklı şekilde yorumlanır. Bir dizgeyi temsil etmek için tek bir alıntı kullanırsak, dizedeki tüm tek tırnakların öncelenmesi gerekir. Çift tırnak için de durum benzerdir. Yukarıdaki metni temsil etmek için nasıl yapılabileceği aşağıda açıklanmıştır.

Yukarıdaki programı çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:

İşte Python tarafından desteklenen tüm kaçış dizilerinin bir listesi.

Escape KarakterTanım
\yenisatırTers eğik çizgi ve satırsonu yok sayılır
\\Ters eğik çizgi
\’Tek tırnak
\”Çift tırnak
\aASCII Bell
\bASCII Backspace
\fASCII Form besleme
\nASCII Satır besleme
\rASCII Satırbaşı
\tASCII Yatay sekme
\vASCII Dikey Sekme
\oooOktal değer ile karakter 000
\xHHHexadecimal değer ile karakter HH

İşte bazı örnekler

Kaçış Karakterini Yok Saycak Ham Dize

Bazen bir dizge içindeki kaçış dizilerini görmezden gelmek isteyebiliriz. Bunu yapmak için dizenin önüne r veya R yerleştirebiliriz. Bu, onun bir ham dizge olduğunu ve içindeki herhangi bir kaçış dizisinin yok sayılacağını ima edecektir.

Format() ile Dizeleri Biçimlendirme Yöntemi

String nesnesiyle kullanılabilen format() yöntemi çok yönlüdür ve dizeleri formatlamada güçlüdür. Biçim dizeleri, yer tutucular olarak kaşlı ayraçlar veya değiştirilen değiştirme alanları {} içerir.

Sırayı belirtmek için konumsal argümanlar veya anahtar kelime argümanları kullanabiliriz.

Kodlar çalıştırıldığında aşağıdaki gibi bir ekran çıktısı oluşacaktır.

format() yöntemi isteğe bağlı biçim özelliklerine sahip olabilir. Alan adından iki nokta üst üste kullanılarak ayrılırlar. Örneğin, verilen boşlukta bir dizgeyi <, sağa yaslama> veya ortada ^ hizalayabiliriz.

Tam sayıları ikili, onaltılık vb. olarak da biçimlendirebiliriz ve yüzer sayılar üs biçiminde yuvarlanabilir veya görüntülenebilir. Kullanabileceğiniz tonlarca biçimlendirme var .

 format() yöntemiyle kullanılabilen tüm dize biçimlendirmeleri için burayı ziyaret edin.

Eski stil biçimlendirme

C programlama dilinde kullanılan eski sprintf() stili gibi dizeleri bile biçimlendirebiliriz. Bunu başarmak için % operatörünü kullanıyoruz.

Yaygın Python Dizesi Yöntemleri

String nesnesi ile kullanılabilen çok sayıda yöntem vardır. Yukarıda bahsettiğimiz format() yöntemi bunlardan biridir. Yaygın olarak kullanılan yöntemlerden bazıları lower(), upper(), join(), split(), find(), replace() vb.

3 Yorum

Yorum yapmak için tıklayın