Odak modu
indexing
deniyor. Bunu köşeli parantez []
ile sağlayacağız.isim
diye bir değişken oluşturup, string'e eşitleyip, ilk elemanına(karakterine) erişelim.isim = "Deniz"
isim[1]
'e'
"Deniz"[1]
'e'
0
dan başlıyor. Yani biz ilk elemana ulaşmak istiyorsak [0]
ile sorgulamamız lazım.isim[0]
'D'
[1]
isim[1]
'e'
"Deniz"[0]
'D'
"Deniz"[1]
'e'
[-1]
yazabiliriz.isim[-1]
'z'
[-2]
isim[-2]
'i'
Deniz
5 karakterden oluşuyor. Indexleri 0,1,2,3,4. Eğer ben 4 ten büyük bir index verirsem o indexte bir elemanı olmadığı için hata alırım.len(isim)
5
isim[4]
'z'
isim[5]
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-13-f0339b205fca> in <module>
----> 1 isim[5]
IndexError: string index out of range
isim[10]
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-15-f25549abd903> in <module>
----> 1 isim[10]
IndexError: string index out of range
isim
'Deniz'
isim[0] = "b"
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-17-59044b134158> in <module>
----> 1 isim[0] = "b"
TypeError: 'str' object does not support item assignment
isim
'Deniz'
# Burada önemli olan nokta ilk belirtilen indexing dahil edilip son olarak yazılanın dahil edilmemesi
# 0,1,2 indexlerindekileri döndürdü sonuç olarak
isim[0:3]
'Den'
başlangıç:bitiş
olarak veriyoruz ve bitiş olarak verdiğimiz index dahil olmuyor. Başlangıcı belirtmezsek Python default olarak başlangıç değerini 0 alıyor.isim[:3]
'Den'
isim[1:]
'eniz'
isim[0:]
'Deniz'
isim[:]
'Deniz'
len(isim)
5
isim[1:20]
'eniz'
isim[1:200]
'eniz'
isim[1:]
'eniz'
başlangıç:bitiş
olarak slicing yapabileceğimiz gibi, başlangıç:bitiş:adım
formunda da slicing yapabiliriz. Burada adım
parametresi kaçar kaçar gideceğimizi belirler.isim
'Deniz'
isim[0:10:2]
'Dnz'
isim[0:10:3]
'Di'
# 0. indexten 10. indexe 2 azalarak gidemez, o yüzden boş string döndürür
isim[0:10:-1]
''
isim[10:0:-1]
'zine'
isim[::-1]
'zineD'
isim[::-2]
'znD'
Sektörde en çok aranan yazılım becerilerini kazan
Yapay zeka desteği, birebir mentörlük saatleri, canlı dersler ve senin için özel hazırlanmış içeriklerle eksiklerini tamamla, düzenli geri bildirimler al ve öğrenme sürecini en verimli hale getir.
Yunus Emre Kabakcı
Patika+ mezunuPatika+ Fullstack Web Development Bootcamp mezunumuz Yunus Emre,
3 ay içinde Katar’dan aldığı teklif ile, global bir şirket olan Pavo Group’da işe başladı!
“İçerik zenginliği, mentor desteği, ileriye dönük bir network sağlaması ve dünyada en çok tercih edilen frameworkler üzerinden bir eğitim veriyor olması Patika+’ı tercih etmemin temel sebepleri oldu!“
Yorum yapabilmek için derse kayıt olmalısın!