Python programlama dili ile string işlemleri nasıl yapılır? Boşluk ekleme, uzunluk bulma, alt string alma, büyük/küçük harf dönüştürme ve daha fazlası Öğrenmek için tıklayın!
Python programlama dili, döngüler sayesinde tekrarlayan işlemleri kolaylıkla gerçekleştirebilen bir yazılım dilidir. Döngüler, programcılara verimli bir şekilde kod yazma imkanı sunarak kullanıcıların çalıştırmak istediği işlemleri defalarca tekrar etmesine olanak tanır.
Python'da iki tür döngü mevcuttur: for döngüsü ve while döngüsü. For döngüsü, belirli bir aralıkta veya bir listede yer alan elemanları teker teker işleyen bir döngü türüdür. While döngüsü ise bir koşul sağlandığı sürece tekrar eden bir yapısı vardır. Bu iki döngü türü, Python kullanıcılarının sık sık başvurduğu döngüler arasında yer alır.
Aynı zamanda, range() fonksiyonu da döngülerin önemli bir parçasıdır. Bu fonksiyon, belirli bir aralıktaki sayıları üretmekte kullanılır ve for döngüsü ile birlikte çok sık kullanılır.
Python'daki döngülerin kullanımı oldukça kolay ve öğrenmesi hızlıdır. Programcılar, döngüler sayesinde tekrarlayan işlemleri tek bir defada tamamlayabilir ve zamandan tasarruf edebilir. Döngüler, verilerin işlenmesinde büyük önem taşıyan bir yapı olduğu için, Python öğrenmek isteyen herkesin döngüleri iyi anlaması ve kullanması gerekmektedir.
For Döngüsü
Python'da for döngüsü, belirli bir kod parçasının belirli bir sayıda tekrarlanmasına olanak tanır. Şöyle bir hatırlatma yapalım: her for döngüsü belirli bir sayıda işlem yapar ve bu sayı önceden belirlenmiştir.
Python'da for döngüsü genellikle bir veri yapısında gezinir ve her bir eleman için belirli bir işlem yapar. Bir örnek vermek gerekirse, şu şekilde olabilir:
Örnek | Açıklama |
---|---|
for i in range(5): print(i) | 0'dan başlayarak 4'e kadar (5 hariç) her sayı için ekrana i'yi yazar. |
Bu örnekte, range(5)
fonksiyonu 0'dan 5'e kadar olan sayıları bir aralıkta belirtir. for
döngüsü, açıklanan aralıktaki sayıları i
değişkenine atar ve her atama için kod bloğunda belirtilen işlemleri gerçekleştirir.
Bir diğer örnek ise bir liste içinde gezinmek için olabilir:
Örnek | Açıklama |
---|---|
televizyonlar = ['Samsung', 'LG', 'Toshiba', 'Sony', 'Panasonic'] for tv in televizyonlar: print(tv) | 'televizyonlar' listesindeki her elemanı tv değişkenine atanır ve her atama için kod bloğunda belirtilen işlem gerçekleştirilir. |
Bu örnekte for
döngüsü, 'televizyonlar' listesindeki her bir elemanı tv
değişkenine atayan, ve her atama için kod bloğunda belirtilen işlemi gerçekleştiren bir döngüdür.
While Döngüsü
Python'da döngüler for ve while olarak ikiye ayrılır. While döngüsü, belirli bir şart sağlandığı sürece tekrarlanan bir döngüdür. Şart sağlanmazsa döngü sonlanır ve program devam eder.
While döngüsü syntax'ı aşağıdaki gibidir:
Syntax | Açıklama |
---|---|
while şart: |
|
While döngüsü, belirli bir şartın sağlandığı sürece döngüyü tekrarlar. Şart sağlanmazsa döngü sonlanır ve program akışı diğer satırlara devam eder. While döngüsü içinde yapılacak işlemler üst kısımdaki syntax'da belirtilen kısımda yazılır. Döngünün çalışması için şartın mutlaka sağlanması gerekmektedir. Aksi takdirde döngü çalışmaz.
Range() Fonksiyonu
Python'da range() fonksiyonu, belirtilen aralıkta sayısal bir dizi oluşturmak için kullanılır. Bunun için, range() fonksiyonu içinde başlangıç, bitiş ve adım değerleri belirtilir. Örneğin, range(0,10,2)
fonksiyonu, 0'dan başlamak üzere, 2'şer artırarak 10'a kadar sayısal bir dizi oluşturur.
range() fonksiyonu, genellikle for döngüsü içinde kullanılır. Bu sayede, belirlenen aralıktaki her bir sayı için işlem yapılabilir. Ayrıca, range() fonksiyonunun sadece başlangıç ve bitiş değerleri belirtilerek kullanılabilir. Bu durumda, her bir adım varsayılan olarak 1 olarak kabul edilir.
range() fonksiyonunun syntax'ı şu şekildedir:
Parametre | Açıklama |
---|---|
start | Opsiyonel. Dizinin başlangıç değeri. Varsayılan değeri 0'dır. |
stop | Zorunlu. Dizinin bitiş değeri, ancak bu değer dizinin kendisi değil, belirtilen değerin bir öncesi olacaktır. |
step | Opsiyonel. Artış miktarı. Varsayılan değeri 1'dir. |
range() fonksiyonuyla dizi oluşturma işlemi sırasında, her bir öğe sadece bellekte yer kaplamak için oluşturulur. Bu nedenle, büyük bir dizi oluştururken bellek kullanımını dikkate almak önemlidir.
Range() ile For Döngüsü
For döngüsü, belirtilen bir iterable üzerindeki elemanları teker teker dolaşarak işlem yapmak için kullanılır. Eğer bir liste, tuple veya string gibi iterable nesneler üzerinde dolaşılacaksa, for döngüsü uygun bir seçenektir.
Bu noktada, range() fonksiyonu for döngüsünde sıklıkla kullanılmaktadır. range() fonksiyonu, belirtilen aralıktaki sayıları içeren bir object oluşturur.
Kullanımı | Açıklama |
---|---|
range(stop) | Başlangıç değeri 0, bittiği değer ‘stop’ olan bir obje döndürür |
range(start,stop) | Başlangıç değeri ‘start’, bittiği değer ‘stop’ olan bir obje döndürür |
range(start, stop, step) | Başlangıç değeri ‘start’, ‘step’ aralıklarıyla ‘stop’ değerine kadar olan sayıları içeren bir obje döndürür |
Öğrenmek için, basit bir örnek oluşturalım. Örneğin, 0 ila 10 arasındaki sayıları for döngüsü ve range() fonksiyonu kullanarak yazdıralım.
for i in range(0, 11): print(i)
Burada, range(0, 11) fonksiyonu 0'dan başlayan ve 10'a kadar olan tüm tam sayıları içeren bir obje döndürür. Bu obje, for döngüsü kullanılarak teker teker yazdırılır.
Break ve Continue
Python'da break ve continue keywordleri, döngülerde kullanılan çok önemli bir yapıdır. Break keywordü, bir döngü içinde kullanıldığında, döngüden çıkar ve sıradaki kodlar ile devam eder. Continue keywordü, bir döngü içinde kullanıldığında, o anda çalışan işlemi durdurur ve bir sonraki işleme geçer.
Örneğin, bir listeyi ele alalım ve listenin içindeki çift sayıları yazdırmak istediğimizi varsayalım. Bu işlemi for döngüsü ile yapabiliriz. İlk olarak listedeki her bir öğeyi kontrol ederiz. Eğer öğe çift sayı ise yazdırırız. Ama, eğer öğe tek sayıysa, bu öğeyi atlayabiliriz. Bu durumda, continue keywordünü kullanarak döngüyü tekrar başlatırız. Aşağıdaki örnek kod for döngüsü ve continue keywordü ile çift sayıları yazdırma işlemini gerçekleştirir:
Kod: | for i in range(10): |
---|---|
if i % 2 != 0: | |
continue | |
print(i) |
Bu kodda, 0’dan 9’a kadar sayıları kontrol ediyoruz ve bu sayıların her biri için, sayının %2'sinin kalanı hesaplanır. Eğer kalan 0 değilse, bu sayının çift sayı olmadığı anlamına gelir ve continue keywordü kullanarak döngüyü atlayarak bir sonraki sayı işleme alınır. Eğer sayının çift sayı olduğunu saptarsak, bu sayıyı yazdırırız.
Bu örnekte gösterildiği gibi, break ve continue ifadeleri, programlama dillerinde önemli yapılar arasında yer alır ve bu yapıları kullanmak, kodlarımızın daha açık ve anlaşılır olmasını sağlar.
Python, string veri tipi için zengin özelliklere sahip bir programlama dilidir. String'ler, Python'da metinleri temsil etmek için kullanılır. String veri türünü tanımlarken tırnak işaretleri ('..') veya ("..") kullanılır. Değişken isminin yanına bir string tanımlandığında, Python otomatik olarak değişkenin veri türünü belirler.
String'ler üzerinde birçok manipülasyon gerçekleştirilebilir. String'lerin uzunluğunu öğrenmek, karakterleri değiştirmek veya biçimlendirmek, string'leri birleştirmek veya kesmek gibi birçok işlem yapabilirsiniz.
String'ler, karakter dizileri olarak adlandırılır ve her karakterin bir indeksi vardır. İndeks, string içindeki pozisyonu belirler. String'lerin indeksleri sol dan sağa doğru sıfırdan başlar. Örneğin "Merhaba"string'inde "M" 0 indeksi, "e" 1 indeksi, "r" 2 indeksi vb. olarak sayılabilir.
Python'da string'ler üzerinde birçok operatör bulunur. "in" ve "not in" operatörleri, string'in içinde belirli bir karakter dizisinin (substring) var olup olmadığını kontrol etmek için kullanılır. Ayrıca, "+" operatörü ile iki veya daha fazla string birleştirilebilir. % operatörü ve format() metodu ile de string'ler biçimlendirilebilir.
Aşağıdaki tabloda, Python'da string'ler için sık kullanılan operatörler ve methodlar listelenmiştir:
Operatör/Method | Açıklama |
---|---|
+ | String birleştirme operatörü |
* | String çoğaltma operatörü |
[] | String'e erişmek için indeksleme operatörü |
[ : ] | String dilimleme operatörü |
in | Bir string içinde belirli bir substring var mı? |
not in | Bir string içinde belirli bir substring yok mu? |
len() | String'in uzunluğunu bulmak için kullanılır |
count() | Bir karakter veya substring'in sayısını saymak için kullanılır |
find() | Belli bir substring'in indeksini bulmak için kullanılır |
replace() | Bir substring'i başka bir substring ile değiştirmek için kullanılır |
split() | Bir string'i belirli bir ayraç karakterine göre bölmek için kullanılır |
join() | Bir liste veya demet içindeki string elemanlarının birleştirilmesi için kullanılır |
Yukarıdaki operatörler ve methodlar, string manipülasyonu yaparken oldukça faydalıdır. Bu özellikler, Python'u etkili bir şekilde kullanmanıza yardımcı olur.
String Indexleme ve Dilimleme
Python'da, stringler karakterlerin bir araya gelmesi ile oluşan veri tipleridir. String'lerin karakterleri indeks numaralarıyla belirlenir ve bu karakterlere erişmek için indexleme ve dilimleme işlemleri kullanılır.
Stringlerin her bir karakteri, bir numaraya karşılık gelir. Bu numaralar integer cinsinden verilir ve sıfırdan başlayarak artar. Örneğin, 'Hello World!' stringi indeks numarası olarak 'H' harfinde 0, 'e' harfinde 1 ve '!' işaretinde 11 numarası vardır.
String indexleme işlemi, bir string içerisindeki belirli bir karaktere erişmek için kullanılır. Bu işlem, köşeli parantezler içine belirtilen indeks numarası ile gerçekleştirilir. Örneğin, 'Hello World!' stringindeki 0 indeks numaralı karakter 'H' harfidir ve 'Hello World!' stringinin Python kodunu yazarsak şöyle görünür:
s = "Hello World!"print(s[0]) # H
Dilimleme işlemi ise, bir string içerisinde belirtilen karakter aralığının bir kısmını alma işlemidir. Bu işlem de köşeli parantezler ve iki noktalı işaretle yapılır. İki noktalı işaret, sol tarafında başlangıç indeks numarasını, sağ tarafında ise bitiş indeks numarasını belirtir. Bitiş indeks numarası dahil edilmez , yani [başlama indeksi:bitiş indeksi +1] şeklinde düşünebiliriz. Örneğin, 'Hello World!' stringinin bir kısmını dilimlemek için Python kodumuz şu şekilde olabilir:
s = "Hello World!"print(s[0:5]) # Hello
Bazı alternatif kullanımlarda ise başlangıç ve bitiş indeks numaraları belirtilmezse başlangıç indeksi 0 ve bitiş indeksi en son indeks numarasına otomatik olarak atanır. Bu şekilde kodumuz daha kısa olabilir:
s = "Hello World!"print(s[:5]) # Helloprint(s[6:]) # World!
In ve Not In Operatörleri
Python'da kullanılan stringler için birçok operatör bulunmaktadır. Bu operatörler arasında "in" ve "not in" operatörleri string'lerde sıklıkla kullanılmaktadır. "in" operatörü bir string'in içerisinde belirli bir kelimenin olup olmadığını kontrol ederken, "not in" operatörü ise kontrol işlemini tersine çevirir ve belirli bir kelimenin string içinde olmadığını kontrol eder.
Örneğin, bir programda belirli bir kelimenin string içinde bulunup bulunmadığını kontrol edebilirsiniz. Örneğin, aşağıdaki program parçası belirli bir kelimenin bir string içinde olup olmadığını kontrol eder:
word = "python"string = "I love using python for programming!"if word in string: print("The word is in the string!")else: print("The word is not in the string.")
Yukarıdaki örnekte, "python" kelimesi "I love using python for programming!" string içinde olduğu için, program "The word is in the string!" yazdırır. "not in" operatörünü kullanarak aynı kontrolü gerçekleştirebilirsiniz:
word = "java"string = "I love using python for programming!"if word not in string: print("The word is not in the string.")else: print("The word is in the string!")
Bu örnekte, "java" kelimesi "I love using python for programming!" string içinde bulunmadığı için, program "The word is not in the string." yazdırır.
Tablo olarak ifade edecek olursak:
Operatör | Açıklama |
---|---|
in | Belirli bir kelimenin string içinde olup olmadığını kontrol eder |
not in | Belirli bir kelimenin string içinde olmadığını kontrol eder |
Bu operatörler, string manipülasyonu yaparken oldukça faydalıdır ve birçok programda kullanılmaktadır. İşlevlerini iyi anlamak, daha verimli ve düzgün bir kod yazmanıza olanak sağlayacaktır.
String Birleştirme ve Formatlama
Python'da string'ler başka string'lerle kolayca birleştirilebilir. Bunun için iki string'i "+" operatörü ile birleştirmek yeterlidir. Örneğin, "Merhaba" + "Dünya" ifadesi "MerhabaDünya" string'ini verir.
Ayrıca, string'ler belirli bir formatlamanın kullanımıyla birleştirilebilir. Bunun için "format()" fonksiyonu kullanılır. Bu fonksiyon bir string içinde belirlenen yerlere değişkenlerin yerleştirilmesi için kullanılır. Fonksiyonun syntax'ı {}, {} gibi süslü parantezlerden oluşan yer tutuculara sahiptir.
Örnek olarak, "Isim: {} Soyisim: {}".format("Ali", "Yılmaz") ifadesi "Isim: Ali Soyisim: Yılmaz" string'ini oluşturur. Yer tutucuların içindeki değişkenler fonksiyonun parametreleri olarak verilir.
String'ler ayrıca, string methodları kullanılarak da birleştirilebilir. Bunlar arasında "join()" ve "replace()" methodları yer alır. "Join()" methodu, belirtilen bir listenin elemanlarını belirtilen string içinde birleştirir. "Replace()" methodu ise bir string içinde belirli bir karakteri başka bir karakterle değiştirir.
Örnek olarak, " ".join(["Python", "Dilidir"]) ifadesi "Python Dilidir" string'ini verir. "Join()" methodunda belirtilen string arasında bulunan boşluk karakteri, listenin elemanlarını birleştirir.
Sonuç olarak, Python'da string'leri birleştirme ve formatlama yöntemleri oldukça kullanışlıdır. "|", "{}", "+" ve string methodları ile string'lerin kolayca birleştirilmesi mümkündür.