Python programlama dili, birçok kullanışlı fonksiyon ve kütüphane içermektedir. Bu fonksiyonlardan biri de filter() fonksiyonudur. Filter() fonksiyonu, bir dizi veri üzerinde filtreleme işlemi yapmak için kullanılır. Bu sayede, belirli bir koşulu sağlayan verileri elde etmek veya verileri belirli bir düzene göre filtrelemek mümkündür.
Filter() fonksiyonu, bir fonksiyon ve bir dizi iterable nesne alır. Iterable nesne, liste, demet, sözlük gibi birden fazla veri tipini kapsar. Fonksiyon, iterable nesnelerin her bir öğesine uygulanır ve koşulu karşılayan öğeleri filtreler. Bu sayede, istenilen filtreleme işlemi gerçekleştirilebilir. Ayrıca filter() fonksiyonu ile birçok farklı koşulda filtreleme yapmak mümkündür.
Filter() Fonksiyonu Nedir?
Python’da filtreleme işlemleri yapmak için filter() fonksiyonu kullanılır. Bu fonksiyon, bir dizi veriyi filtrelemek için kullanılan bir fonksiyonu ve bu fonksiyona uygulanacak bir iterable nesneyi alır. filter() fonksiyonu, bu fonksiyonu iterable nesnenin öğelerine uygular ve belirli bir koşulu karşılayan verileri filtreler.
Bu fonksiyon sayesinde, verileri kolayca filtreleyebilir ve örneğin sadece tek sayıları seçmek gibi belirli bir koşulu uyan verileri elde edebilirsiniz. Bu sayede, işlemleriniz daha hızlı ve doğru bir şekilde gerçekleşir. filter() fonksiyonu aynı zamanda lambda fonksiyonu ile de kullanılabilir ve işlemlerinizi daha da basitleştirebilirsiniz.
Fonksiyonun Kullanımı
Python’da filter() fonksiyonu, belirli bir koşulu sağlayan verileri filtrelemek için kullanılır. Fonksiyon, bir fonksiyon ve bir dizi iterable nesne alır. Filter() fonksiyonu, fonksiyonu belirtilen dizi üzerinden uygular ve koşulu sağlayan öğeleri yeni bir diziye ekler. Örneğin, bir sayılar listesi içinde yalnızca tek sayıları alabilirsiniz. Bu durumda, filter() fonksiyonu kullanılacaktır.
Bunun için öncelikle bir fonksiyon tanımlanır. Örneğin; tek sayıları filtrelemek için bir fonksiyon tanımlanır ve daha sonra bu fonksiyon filter() fonksiyonu ile kullanılır. Bu işlem, oldukça kolaydır ve hızlı bir şekilde yapılabilir. Öğeleri filtrelemek için kullanılabilecek birçok farklı fonksiyon vardır. Bu nedenle, hangi fonksiyonun kullanılacağına karar vermek için, ilk önce hangi verilerin filtrelenmesi gerektiği bilinmelidir.
Fonksiyonun kullanımı oldukça kolaydır. Filter() fonksiyonu, iterable nesneler üzerinden çalışır. Iterable, örneğin bir liste, demet, küme vb. olabilir. Bu nedenle, filter() fonksiyonu ile verileri filtrelemek için öncelikle işlem yapılacak iterable nesneler belirlenir. Daha sonra, filtrelenecek olan verileri belirleyen fonksiyon da belirlenir.
Özet olarak, filter() fonksiyonu, belirli bir koşula uyan verileri filtrelemek için kullanılır. Fonksiyon, verilerin iterable nesnelerinin her bir öğesine uygulanır ve koşulu sağlayan öğelerin filtrelenmesi sağlanır. Bu, veri işleme işlemlerinde oldukça faydalı bir fonksiyondur.
Syntax
Python’da filter() fonksiyonunun kullanımı için gereke syntax şu şekildedir:
Parametre | Açıklama |
---|---|
function | Filtreleme koşulunu belirleyen bir fonksiyon. Fonksiyonun True veya False değerleri alması gerekiyor. |
iterable | Filtreleme işlemine tabi tutulacak olan veri tipi veya iterable nesne. Örneğin, liste, tuple, set, dictionary vb. |
filter() fonksiyonu, function parameter’ına gönderilen fonksiyonu her bir iterable elemanı için çağırır ve True sonuç dönen elemanları yeni bir iterable obje olarak döndürür.
Örnek
Python filter() fonksiyonu örneklerine bakalım. İlk örneğimizde, 1’den 10’a kadar bir sayı listesi oluşturduk. Ardından, tek sayıları filtrelemek için tek_mi adlı bir fonksiyon tanımladık. Yeni listeyi oluşturmak için filter() fonksiyonunu ve tek_mi fonksiyonunu kullandık. Son olarak, yeni listenin, yani sadece tek sayıların bulunduğu listenin çıktısını aldık.
İkinci örneğimizde, lambda fonksiyonunu kullanarak aynı işlemi yapacağız. Yine aynı sayı listesini oluşturuyoruz. Ancak bu kez, lambda fonksiyonunu kullanarak sadece tek sayıları filtreliyoruz. Yeni listenin çıktısını almamız yeterli.
Python filter() fonksiyonu, birçok kullanım alanına sahip olduğu için oldukça önemlidir. Hem fonksiyon hem de lambda fonksiyonlarıyla birlikte kullanılabilmekte ve iterable nesneler üzerinde filtreleme işlemleri gerçekleştirebilmektedir. Yeni listelerin oluşturulmasında, verilerin daha kolay bir şekilde işlenmesinde ve veri analizi süreçlerinde kullanılabilir.
liste
Python’da bir dizi veri ile çalışırken, bu verilerin tamamını kullanmak istemeyebilirsiniz. Bu durumda, işimize yaramayacak verileri elde etmek için filter() fonksiyonunu kullanabiliriz. filter() fonksiyonu, bir dizi veriyi filtrelemek için kullanılır ve bize sadece belirli bir koşulu sağlayan öğeleri verir. Bu işlem çok çeşitli durumlarda kullanılabilir. Örneğin, bir liste içindeki tek sayıları elde etmek için:
Liste | Sonuç |
---|---|
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | [1, 3, 5, 7, 9] |
Yukarıdaki örnekte filter() fonksiyonu, tek_mi() fonksiyonunu ve liste adlı bir iterable nesneyi alır. Bu fonksiyon her bir listenin öğesine uygulanır ve sonuçta koşulu sağlayan öğeleri gönderir. lambda fonksiyonu ile yazılmış örnek kodda da aynı işlem yapılmaktadır. Bu sayede, filter fonksiyonu ile liste içerisinden istediğimiz verileri seçebiliriz.
def tek_mi(x):
‘def tek_mi(x):’ fonksiyonu, filtreleme işleminin uygulanacağı verilerin tek mi çift mi olduğunu kontrol eden bir fonksiyondur. Bu fonksiyon, filter() fonksiyonu içinde kullanılır ve filtrelenen verilerin belirli bir koşula uygun olup olmadığını kontrol eder. Eğer veri tek ise True değeri döndürür, çift ise False değeri döndürür. Bu sayede, filter() fonksiyonu ile sadece istenilen özellikteki veriler filtrelenir ve işlem sonucunda istenilen sonuca ulaşılır.
Bir örnek üzerinden anlatmak gerekirse, elimizde bir sayı listesi olsun. Bu listede bulunan sayıların tek ya da çift olduğunu kontrol ederek sadece tek sayıları filtreleyelim. Bu işlem için ‘def tek_mi(x):’ fonksiyonunu kullanabiliriz. Bu fonksiyonu filter() fonksiyonu içinde kullanarak, sadece tek sayıları filtreleyebiliriz. Ayrıca, bu işlemi lambda fonksiyonuyla da yapabiliriz.
Sayı Listesi | Filtrelenmiş Liste (def tek_mi(x)) | Filtrelenmiş Liste (lambda fonksiyonu) |
---|---|---|
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | [1, 3, 5, 7, 9] | [1, 3, 5, 7, 9] |
Bu örnekte, def tek_mi(x) fonksiyonunu kullanarak da lambda fonksiyonunu kullanarak da aynı sonuca ulaşabiliriz. Ancak lambda fonksiyonu kullanımı daha pratik ve hızlı bir yöntemdir.
return x%2!
Python’da filtreleme işlemi yaparken, bir koşula göre bir dizideki öğeleri seçmek için filter() fonksiyonu kullanılır. Bu fonksiyonun kullanımı oldukça basittir ve bir fonksiyon ve iterable nesne alır. Filtreleme işlemini gerçekleştirmek için, tanımlanan fonksiyonun, iterable içindeki her bir öğeye uygulanması gerekmektedir.
Görüldüğü gibi, yukarıdaki örnekte tanımlanan tek_mi fonksiyonu, tüm tek sayıları filtrelemek için kullanılmıştır. Bu fonksiyon, lambda fonksiyonu ile de tanımlanabilir. lambda fonksiyonu, tek seferlik kullanımlarda kolayca tanımlanabilen bir fonksiyondur ve filter() fonksiyonundaki işlevi tanımlamak için çok uygundur.
Örnek | Çıktı |
---|---|
yeni_liste = list(filter(lambda x:x%2!=0, liste)) | [1, 3, 5, 7, 9] |
Burada lambda fonksiyonu, x mod 2’nin 0 olmadığı koşuluyla birlikte tek sayıları filtrelemek için kullanılmıştır.
yeni_liste
Python’da filter() fonksiyonu, belirli koşullara uyan verileri filtrelemek için kullanılır. Bu fonksiyon ile birlikte kullanılan tek_mi() fonksiyonu ise sadece tek sayıları filtrelemek için kullanılmıştır.
Örnekte yeni_liste = list(filter(tek_mi, liste)) kullanılarak, tekMi() fonksiyonu listenin her bir elemanına uygulanır ve koşulu sağlayan elemanlar yeni_liste listesine atılır. Sonuç olarak sadece tek sayılar yeni_liste listesinde yer alır.
print(yeni_liste) # [1, 3, 5, 7, 9]
Yukarıdaki örneklerde belirtildiği gibi, Python filter() fonksiyonu sayesinde belirli bir koşulu sağlayan verileri filtrelemek oldukça kolaydır. Örneklerdeki fonksiyonlar ile filtrelenecek verilerin koşulu belirtilmiş ve sonuç olarak yeni bir liste oluşturulmuştur. Son adımda ise, oluşturulan bu yeni listenin ekrana basımı gerçekleştirilmiştir.
print(yeni_liste) satırı, filtrelenecek verilerin koşuluna uygun olanların yeni bir listede toplandığı sonucunu vermektedir. Bu sayede, uygun verilerin kolayca incelenmesi sağlanmaktadır.
Lambda Fonksiyonu ile filter()
Python programlama dilinde, lambda fonksiyonu, tek seferlik kullanımda kolayca tanımlanabilen bir fonksiyondur. Aynı zamanda filter() fonksiyonundaki fonksiyonu tanımlamak için çok uygun olduğundan, filter() fonksiyonu ile birleştirildiğinde oldukça etkili bir araç haline gelir.
filter() fonksiyonunu lambda fonksiyonu ile kullanırken, bir iterable nesne ve lambda fonksiyonu kullanabilirsiniz. Lambda fonksiyonu, fonksiyon içinde belirli bir koşulu belirleyerek, iterable nesnelerin her bir öğesine uygulanır ve koşula uyan öğeleri filtreler.
Örneğin, bir sayıların listesi belirleyelim ve yalnızca tek sayıları içeren bir liste almak istediğimizi varsayalım. Bu durumda filter() fonksiyonunu lambda fonksiyonuyla birleştirebiliriz:
Kod | Çıktı |
---|---|
liste = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] yeni_liste = list(filter(lambda x:x%2!=0, liste)) print(yeni_liste) # [1, 3, 5, 7, 9] |
[1, 3, 5, 7, 9] |
Yukarıdaki örnekte, lambda fonksiyonu “x%2!=0” olarak belirlendi ve filter() fonksiyonunda kullanıldı. Bu sayede, yalnızca listenin tek sayılarını içeren bir liste oluşturuldu.
Dolayısıyla, lambda fonksiyonu ile filter() fonksiyonu, kodu daha anlaşılır ve temiz hale getirirken, aynı zamanda belirli koşulları filtrelemek için kullanımı oldukça popüler olarak kullanılmaktadır.
Örnek
Aşağıdaki örnekte filter() fonksiyonu, lambda fonksiyonu kullanarak uygulanmıştır:
liste = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
yeni_liste = list(filter(lambda x:x%2!=0, liste))
print(yeni_liste) # [1, 3, 5, 7, 9]
Bu örnek, filter() fonksiyonunun lambda fonksiyonu ile kullanımını göstermektedir. Bu şekilde, filter() fonksiyonundaki fonksiyonun tanımlanması daha pratik bir hale gelmektedir. Örnekte, lambda fonksiyonu tek kullanımda doğrudan filter() fonksiyonuna uygulanmış ve listedeki tek sayılar filtrelenerek yeni bir liste oluşturulmuştur.
liste
Python programlama dilinde, liste gibi iterable nesneleri filtrelemek için filter() fonksiyonu kullanılır. Bu fonksiyon, bir liste ve bir fonksiyon alır ve belirli bir koşulu sağlayan öğeleri liste halinde döndürür. Örneğin, “liste = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]” gibi bir liste üzerinde filter() fonksiyonu kullanılarak, belirli verileri filtreleyebiliriz.
Filtreleme işlemini gerçekleştirmek için, önce filtrelemek istediğimiz koşulları belirleyen bir fonksiyon oluşturmalıyız. Fonksiyon, listenin her bir öğesine uygulanır ve koşulu sağlayan öğeleri filtreleyerek yeni bir liste oluşturur. Örneğin, verilen listenin tek sayılarını filtrelemek için, “def tek_mi(x): return x%2!=0” gibi bir fonksiyon oluşturabiliriz. Daha sonra, filter() fonksiyonunu kullanarak, bu fonksiyonu listenin her bir öğesine uygularız. Sonuç olarak, tek sayıları içeren yeni bir liste elde ederiz.
yeni_liste
Python’da filter() fonksiyonu, bir dizi veriye uygulanan bir fonksiyonu kullanarak belirli bir koşula uyan verileri filtreler. Bu işlem, lambda fonksiyonu kullanılarak oldukça kolay hale getirilebilir. yeni_liste = list(filter(lambda x:x%2!=0, liste)) örneğinde, lambda fonksiyonu tek seferlik kullanımda tanımlanan bir fonksiyondur. Bu örnekte, filtreleme işlemi için herhangi bir fonksiyon tanımlamak gerekmez, çünkü lambda fonksiyonu tek satırda filtreleme işlemini gerçekleştirir.
Bu örnekte, lambda fonksiyonu x’in 2 ile bölümünden kalanı 0’a eşit olmayan öğeleri seçmek için kullanılır. Bu da, orijinal veri listesinde yalnızca tek sayıların yeni_liste listesinde yer alması anlamına gelir. Lamda fonksiyonu ile filter() fonksiyonunun kullanımı oldukça yaygındır ve pratik bir yaklaşımdır.
print(yeni_liste) # [1, 3, 5, 7, 9]
Yukarıdaki örneklerde, filter() fonksiyonunun bir dizi veri üzerinde nasıl çalıştığını gösterdik. Örneklerde, verilen özelliklere göre liste elemanlarını filtreledik. print(yeni_liste) # [1, 3, 5, 7, 9] örneğinde, filtrelenmiş değerleri ekrana basıyoruz.
Print() fonksiyonu, Python’daki en temel fonksiyonlardan biridir ve bir programcının yazdığı kodun çıktısını görüntülemek için kullanılır. Yukarıdaki örnekte, filter() fonksiyonundan dönen değerleri görüntülemek için kullanıyoruz. Ayrıca, list() fonksiyonu da filter() fonksiyonunun döndürdüğü değerleri bir liste olarak çıkarmak için kullanılır.