Softmush.com, teknoloji, yazılım ve dijital dünyaya dair derinlemesine içeriklerle bilgiye ulaşmanın güvenilir adresi. - Softmush.com
“ Söz konusu olan vatansa, gerisi teferruat. ”
Mustafa K. Atatürk
Python Dilinde Python Lists Kullanımı

Python Dilinde Python Lists Kullanımı

Python programlama dilinde listeler, birden fazla öğeyi tek bir değişken altında depolamak için kullanılan temel ve çok yönlü veri yapılarından biridir. Sıralı, değiştirilebilir (mutable) ve farklı veri tiplerindeki öğeleri barındırabilen koleksiyonlardır. Veri yönetimi, algoritma geliştirme ve birçok programlama görevinde kritik bir rol oynarlar. Bu kılavuz, Python listelerinin oluşturulmasından karmaşık manipülasyonlarına kadar tüm yönlerini adım adım ele alacaktır.


Sözdizimi


Python'da bir liste, köşeli parantezler [] içine virgülle ayrılmış öğeler yerleştirilerek oluşturulur.


liste_adi = [eleman1, eleman2, eleman3, ...]

Detaylı Açıklama


  • liste_adi: Oluşturulan listeyi referans alan değişkendir. Geçerli bir Python tanımlayıcısı olmalıdır.

  • =: Atama operatörüdür. Sağdaki liste değerini soldaki değişkene atar.

  • []: Köşeli parantezler, bir liste veri yapısının başlangıcını ve sonunu işaret eder. Python yorumlayıcısı, bu parantezlerin içindeki öğeleri bir liste olarak tanır.

  • eleman1, eleman2, eleman3, ...: Listede saklanacak öğelerdir. Bu öğeler, tam sayılar, ondalık sayılar, dizeler, boolean değerler, hatta başka listeler veya özel nesneler dahil olmak üzere herhangi bir Python veri tipinde olabilir. Öğeler birbirlerinden virgül , ile ayrılır.

Listeler sıralıdır, yani öğelerin eklenme sırası korunur ve bir dizin (index) numarası ile erişilebilirler. İlk öğenin dizini 0'dır. Ayrıca, listeler değiştirilebilirdir, yani oluşturulduktan sonra öğeleri eklenebilir, çıkarılabilir veya güncellenebilir.


Pratik Kullanım Örnekleri


Aşağıdaki örnekler, Python listelerinin temel kullanım senaryolarını göstermektedir.


1. Liste Oluşturma


Boş bir liste veya farklı veri tiplerini içeren bir liste oluşturabilirsiniz.


# Boş bir liste oluşturma
bos_liste = []
print(f"Boş Liste: {bos_liste}")

# Tam sayılar içeren bir liste
sayilar = [1, 2, 3, 4, 5]
print(f"Sayılar Listesi: {sayilar}")

# Dizeler içeren bir liste
meyveler = ["elma", "armut", "kiraz"]
print(f"Meyveler Listesi: {meyveler}")

# Farklı veri tiplerini içeren bir liste
karisik_liste = [10, "Python", True, 3.14]
print(f"Karışık Liste: {karisik_liste}")

# İç içe liste (nested list)
ic_ice_liste = [[1, 2], ["a", "b"]]
print(f"İç İçe Liste: {ic_ice_liste}")

2. Listeye Erişim


Listelerdeki öğelere dizin numaraları (index) kullanılarak erişilir. Dizinler 0'dan başlar. Negatif dizinler listenin sonundan itibaren saymaya başlar (-1 son öğeyi temsil eder).


my_list = ["a", "b", "c", "d", "e"]

# İlk öğeye erişim
print(f"İlk öğe: {my_list[0]}") # Çıktı: a

# Üçüncü öğeye erişim
print(f"Üçüncü öğe: {my_list[2]}") # Çıktı: c

# Son öğeye erişim (negatif dizin)
print(f"Son öğe: {my_list[-1]}") # Çıktı: e

# Sondan ikinci öğeye erişim
print(f"Sondan ikinci öğe: {my_list[-2]}") # Çıktı: d

3. Liste Öğelerini Değiştirme


Listeler değiştirilebilir olduğu için, belirli bir dizindeki öğeyi güncelleyebilirsiniz.


sayilar = [10, 20, 30, 40]
print(f"Orijinal liste: {sayilar}")

# İlk öğeyi değiştirme
sayilar[0] = 5
print(f"Değiştirilen ilk öğe sonrası: {sayilar}") # Çıktı: [5, 20, 30, 40]

# Son öğeyi değiştirme
sayilar[-1] = 50
print(f"Değiştirilen son öğe sonrası: {sayilar}") # Çıktı: [5, 20, 30, 50]

4. Listeye Eleman Ekleme


append() metodu listenin sonuna, insert() metodu ise belirtilen bir dizine öğe ekler.


meyveler = ["elma", "armut"]

# listenin sonuna öğe ekleme
meyveler.append("muz")
print(f"Append sonrası: {meyveler}") # Çıktı: ['elma', 'armut', 'muz']

# Belirli bir dizine öğe ekleme (dizin 1'e 'kiraz' ekle)
meyveler.insert(1, "kiraz")
print(f"Insert sonrası: {meyveler}") # Çıktı: ['elma', 'kiraz', 'armut', 'muz']

5. Listeden Eleman Çıkarma


remove() metodu belirtilen değeri, pop() metodu belirtilen dizindeki öğeyi (veya son öğeyi), del anahtar kelimesi ise belirtilen dizindeki öğeyi veya dilimi siler.


renkler = ["kırmızı", "yeşil", "mavi", "sarı"]

# Değere göre silme
renkler.remove("yeşil")
print(f"Remove 'yeşil' sonrası: {renkler}") # Çıktı: ['kırmızı', 'mavi', 'sarı']

# Dizin 1'deki öğeyi silme (pop varsayılan olarak son öğeyi siler)
silinen_renk = renkler.pop(1)
print(f"Pop sonrası: {renkler}, Silinen: {silinen_renk}") # Çıktı: ['kırmızı', 'sarı'], Silinen: mavi

# 'del' anahtar kelimesi ile dizin 0'daki öğeyi silme
del renkler[0]
print(f"Del sonrası: {renkler}") # Çıktı: ['sarı']

# Tüm listeyi silme
# del renkler
# print(renkler) # Hata verecektir, çünkü liste artık mevcut değil.

# Listeyi temizleme (içindeki tüm öğeleri siler, liste objesi kalır)
sayilar = [1, 2, 3]
sayilar.clear()
print(f"Clear sonrası: {sayilar}") # Çıktı: []

6. Liste Dilimleme (Slicing)


Listenin bir bölümünü (dilimini) almak için dilimleme işlemi kullanılır. Sözdizimi liste[baslangic:bitis:adim] şeklindedir.


alfabe = ["a", "b", "c", "d", "e", "f", "g"]

# İlk üç öğeyi al
print(f"İlk üç: {alfabe[0:3]}") # Çıktı: ['a', 'b', 'c']
print(f"İlk üç (kısa): {alfabe[:3]}") # Çıktı: ['a', 'b', 'c']

# İkinci dizinden sona kadar
print(f"İkinci dizinden sona: {alfabe[1:]}") # Çıktı: ['b', 'c', 'd', 'e', 'f', 'g']

# Üçüncü dizinden beşinci dizine kadar (beşinci dahil değil)
print(f"Üçüncüden beşe: {alfabe[2:5]}") # Çıktı: ['c', 'd', 'e']

# Tüm listeyi kopyalama
kopyalanmis_alfabe = alfabe[:]
print(f"Kopyalanmış: {kopyalanmis_alfabe}") # Çıktı: ['a', 'b', 'c', 'd', 'e', 'f', 'g']

# Her ikinci öğeyi al
print(f"Her ikinci: {alfabe[::2]}") # Çıktı: ['a', 'c', 'e', 'g']

# Listeyi ters çevir
print(f"Ters çevrilmiş: {alfabe[::-1]}") # Çıktı: ['g', 'f', 'e', 'd', 'c', 'b', 'a']

7. Temel Liste Operasyonları


Listeler üzerinde çeşitli temel operasyonlar gerçekleştirebilirsiniz.


liste1 = [1, 2, 3]
liste2 = [4, 5, 6]

# Listeleri birleştirme (concatenation)
birlesik_liste = liste1 + liste2
print(f"Birleşik liste: {birlesik_liste}") # Çıktı: [1, 2, 3, 4, 5, 6]

# Bir listeyi tekrarlama
tekrarlanan_liste = liste1 * 3
print(f"Tekrarlanan liste: {tekrarlanan_liste}") # Çıktı: [1, 2, 3, 1, 2, 3, 1, 2, 3]

# Liste uzunluğunu bulma
print(f"Liste1 uzunluğu: {len(liste1)}") # Çıktı: 3

# Bir öğenin listede olup olmadığını kontrol etme
print(f"2 listede mi? {'2' in liste1}") # Çıktı: False (int 2, str '2' değil)
print(f"2 listede mi? {2 in liste1}") # Çıktı: True
print(f"7 listede mi? {7 not in liste2}") # Çıktı: True

Önemli Notlar


  • Değiştirilebilirlik (Mutability): Listeler değiştirilebilir veri yapılarıdır. Bu, içeriklerinin oluşturulduktan sonra değiştirilebileceği anlamına gelir. Bu özellik, listelerin esnekliğini artırır ancak aynı zamanda dikkatli kullanılmasını gerektirir, özellikle liste kopyalama ve referans verme durumlarında.

  • Heterojen Öğeler: Bir Python listesi, farklı veri tiplerindeki (örneğin, tam sayı, dize, boolean, hatta başka bir liste) öğeleri aynı anda barındırabilir.

  • Sıralı Yapı ve Dizinleme: Listelerdeki öğeler belirli bir sırayı korur ve bu sıraya dizin numaraları (0'dan başlayarak) aracılığıyla erişilebilir. Dizin dışı bir öğeye erişim denemesi IndexError hatasına yol açar.

  • Kopyalama Davranışı: Bir listeyi basit bir atama (örneğin, yeni_liste = eski_liste) ile kopyalamak, yeni bir liste oluşturmaz, yalnızca orijinal listenin referansını kopyalar. Bu, her iki değişkenin de aynı listeyi işaret ettiği anlamına gelir. Bağımsız bir kopya oluşturmak için .copy() metodu veya dilimleme [:] kullanılmalıdır (örn. yeni_liste = eski_liste.copy()).

  • Yüksek Performanslı İşlemler: Büyük listelerde sık sık ekleme/çıkarma işlemleri yapılıyorsa, performans sorunları yaşanabilir. Bu tür senaryolarda, collections.deque gibi alternatif veri yapıları daha uygun olabilir.

Yayınlanma Tarihi: 2025-10-16 06:00:28
SQL Dilinde SQL UPDATE Kullanımı: Veri Güncelleme Rehberi
Önceki Haber

SQL Dilinde SQL UPDATE Kullanımı: Veri Güncelleme Rehberi

SQL Makaleleri
Sonraki Haber

PHP Dilinde İstisnalar (Exceptions) Kullanımı

PHP Makaleleri
PHP Dilinde İstisnalar (Exceptions) Kullanımı

Yorum yap

Yorum yapabilmek için  giriş  yapmalısınız.

Yorumlar

Bu yazı hakkında henüz yorum yapılmamıştır.
× Python Dilinde Python Casting Kullanımı
Bu ilginizi çekebilir

Python Dilinde Python Casting Kullanımı

Python programlamada, verilerin farklı tipler arasında dönüştürülmesi sıkça karşılaşılan...