Python'da liste (list) ve demet (tuple) arasındaki temel fark nedir?
A) Listeler sıralıdır, demetler sırasızdır
B) Listeler değiştirilemez, demetler değiştirilebilir
C) Listeler değiştirilebilir, demetler değiştirilemez
D) Listeler sayısal veri tutar, demetler metinsel veri tutar
Python'da liste (list) ve demet (tuple) veri yapıları, birden fazla öğeyi bir arada tutmak için kullanılır. Ancak aralarında çok önemli bir temel fark vardır. Bu farkı adım adım inceleyelim:
- Liste (List) Nedir?
- Listeler, Python'daki en çok kullanılan veri yapılarından biridir.
- Sıralı bir öğe koleksiyonudur, yani öğelerin belirli bir sırası vardır ve bu sıra korunur.
- Köşeli parantezler
[] kullanılarak tanımlanır. Örneğin: my_list = [1, "elma", 3.14]
- Listelerin en önemli özelliği değiştirilebilir (mutable) olmalarıdır. Bu, bir liste oluşturulduktan sonra içindeki öğelerin değerlerinin değiştirilebileceği, yeni öğeler eklenebileceği veya mevcut öğelerin silinebileceği anlamına gelir.
- Örnek:
my_list = [1, 2, 3]. my_list[0] = 10 yazarak ilk öğeyi değiştirebiliriz. Liste artık [10, 2, 3] olur.
- Demet (Tuple) Nedir?
- Demetler de listeler gibi sıralı bir öğe koleksiyonudur.
- Normal parantezler
() kullanılarak tanımlanır. Örneğin: my_tuple = (1, "armut", 2.71)
- Demetlerin en önemli özelliği değiştirilemez (immutable) olmalarıdır. Bu, bir demet oluşturulduktan sonra içindeki öğelerin değerlerinin değiştirilemeyeceği, yeni öğeler eklenemeyeceği veya mevcut öğelerin silinemeyeceği anlamına gelir.
- Örnek:
my_tuple = (1, 2, 3). Eğer my_tuple[0] = 10 yazmaya çalışırsak, Python bir hata (TypeError) verecektir çünkü demetler değiştirilemez.
- Temel Farkın Değerlendirilmesi:
- Şimdi seçenekleri inceleyelim:
- A) Listeler sıralıdır, demetler sırasızdır: Bu ifade yanlıştır. Hem listeler hem de demetler sıralı veri yapılarıdır. Öğelerin bir indeksi vardır ve bu indeksler aracılığıyla erişilebilirler.
- B) Listeler değiştirilemez, demetler değiştirilebilir: Bu ifade yanlıştır. Tam tersi doğrudur. Listeler değiştirilebilirken, demetler değiştirilemez.
- C) Listeler değiştirilebilir, demetler değiştirilemez: Bu ifade doğrudur. Bu, liste ve demet arasındaki en temel ve önemli farktır. Listeler esneklik sağlarken, demetler veri bütünlüğünü korumak için kullanılır.
- D) Listeler sayısal veri tutar, demetler metinsel veri tutar: Bu ifade yanlıştır. Hem listeler hem de demetler farklı türdeki verileri (sayı, metin, boolean, hatta başka listeler/demetler) bir arada tutabilir. Veri türü konusunda bir kısıtlama yoktur.
Bu açıklamalar ışığında, liste ve demet arasındaki temel farkın değiştirilebilirlik (mutability) olduğunu net bir şekilde görebiliriz.
Cevap C seçeneğidir.