Python - Listeler
Hatırlarsanız değişkenler içlerinde sadece bir değer barındırabiliyordu. Yeni bir değer atamak istediğinizde bir önceki silinip yerine yenisi yazılıyordu. Listelerde durum böyle değildir, içlerinde birden fazla veri bulundurmak için tasarlanmışlardır. Bir çok dilin aksine Python'da listeler(diziler) birden fazla veri tipini bünyesinde barındırabilir.
Tanımlama
Aşağıda bir tane boş bir tane de üç elemanlı bir liste tanımlamasını görüyorsunuz.
egitmenler = [] ogrenciler = ["Umut", "Çağdaş", "Coşkun"]
Dilerseniz içinde karışık tiplerden veri barındırabilirsiniz.
bunlarNe = ["Umut", 9111, 3.14, " "]
Basit şekilde tüm listeyi yazdırmak için print
komutunu kullanabilirsiniz.
ogrenciler = ["Umut", "Çağdaş", "Coşkun"] print(ogrenciler)
Eğer listenin istediğiniz bir elemanını yazdırmak isterseniz köşeli [ ]
parantezler içinde sıra numarasını (index) vermelisiniz.
ogrenciler = ["Umut", "Çağdaş", "Coşkun"] print(ogrenciler[1])
Fark ettiyseniz biz "Umut" çıktısını beklerken "Çağdaş" gördük. Bunun nedeni listelerin sıra numaralarının sıfırdan başlaması. Yani ilk elemanı istiyorsak şöyle yapmalıyız;
ogrenciler = ["Umut", "Çağdaş", "Coşkun"] print(ogrenciler[0])
Tek bir eleman yerine belirli bir aralıktaki elemanları almak için köşeli parantez içine iki index yazılır; başlangıç ve bitiş. Geri dönecek olan liste yazdığınız indexler haricindedir.
dizi = ["C++", "Delphi","Python", "Ruby", "PHP", "C#", "Basic"] print(dizi[1:4])
Gördüğünüz gibi birinci ve dördünce indexleri dahil etmeyip onların arasındaki elemanları aldık.
Fonksiyonlar
Listenin kaç elemanlı olduğunu öğrenmek için len fonksiyonunu kullanırız.
# -*- coding: utf-8 -*- dizi = ["Merhaba", "bu", "bir", "dizidir."] n = len(dizi) print("Bu dizi {} elemanlı.".format(n))
Listedeki elemanı silme
Liste içindeki bir elemanı silmek için del ifadesini kullanırız.
dizi = ["Merhaba", "bu", "bir", "dizidir."] print(dizi) # silinmeden önce del dizi[2] print(dizi) # silindikten sonra
Eğer direkt elemanı yazarak silmek isterseniz remove methodunu kullanabilirsiniz.
dizi = ["C++", "Delphi","Python", "Ruby", "PHP", "C#", "Basic"] dizi.remove("C++") dizi.remove("Delphi") dizi.remove("C#") dizi.remove("Basic") print(dizi)
Bir diğer kullanabileceğiniz yol ise pop methodu. Eğer parametre vermezseniz listenin son elemanını, parametre verirseniz o indexteki elemanı siler.
dizi = ["C++", "Delphi","Python", "Ruby", "PHP", "C#", "Basic"] dizi.pop(0) dizi.pop() print(dizi)
Listeye eleman ekleme
Listeye yeni bir eleman eklemek için append kullanılır. Yeni eleman listenin sonuna eklenir.
dizi = ["Python", "Ruby"] dizi.append("PHP") print(dizi)
Eklenen elemanın listede istediğimiz bir yere yerleşmesi için insert kullanırız. İlk parametre eklenecek elemanın sıra numarası (index), ikinci parametre eklenecek eleman.
dizi = ["Python", "Ruby"] dizi.insert(0, "PHP") print(dizi)
Sıralama
Listeyi alfabetik olarak sıralamak için sort methodu kullanılır.
dizi = ["C++", "Delphi","Python", "Ruby", "PHP", "C#", "Basic"] dizi.sort() print(dizi)
Listedeki elemanların sırasını tam tersine çevirmek için reverse methodu kullanılır. Önceki örnekte alfabetik olarak sıralamıştık, şimdi tam tersine çevirelim.
dizi = ["C++", "Delphi","Python", "Ruby", "PHP", "C#", "Basic"] dizi.sort() dizi.reverse() print(dizi)
Liste içinde arama
Liste içinde arama yapabilmek için index fonksiyonu kullanılır. Geriye elemanın sıra numarasını döndürür.
# -*- coding: utf-8 -*- dizi = ["C++", "Delphi","Python", "Ruby", "PHP", "C#", "Basic"] ara = dizi.index("Python") print("Aranılan eleman {}. sırada.".format(ara))
Eğer aradığımız elemanın liste içinde kaç tane olduğunu öğrenmek istiyorsak count kullanabiliriz.
# -*- coding: utf-8 -*- dizi = ["Python", "Python","Python", "Ruby", "PHP", "C#", "Basic"] ara = dizi.count("Python") print("Dizi içinde {} tane var.".format(ara))
Şimdilik bu kadar, listeler konusu döngülerden sonra daha anlaşılır olacaktır.
Devam et: Sözlükler