Python Liste Kavramları Örneklerle Açıklandı

Liste kavrayışları Python'da listeler oluşturmak için özlü bir yol sağlar. Geleneksel döngüleri kullanmaktan daha okunabilir ve genellikle daha verimlidir. Bu makale liste kavrayışlarının ne olduğunu, nasıl çalıştığını inceleyecek ve kullanımlarını göstermek için örnekler sağlayacaktır.

Liste Kavrama Nedir?

Bir liste kavrayışı, bir koleksiyondaki tüm veya bir kısım öğeleri işlemenin ve sonuçları içeren bir liste döndürmenin kompakt bir yoludur. Bir liste kavrayışının sözdizimi şudur:

[expression for item in iterable if condition]

Burada, ifade yinelemedeki geçerli öğedir, ancak aynı zamanda bir liste öğesi gibi bitmeden önce işleyebileceğiniz sonuçtur. yinelenebilir döngüde olduğunuz koleksiyondur ve koşul yalnızca koşulu sağlayan öğeleri içeren isteğe bağlı bir filtredir.

Temel Örnekler

Karelerin Bir Listesini Oluşturma

0'dan 9'a kadar olan sayıların karelerinden oluşan bir liste oluşturmak için aşağıdaki gibi bir liste kavrayışı kullanabilirsiniz:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
squares = [x ** 2 for x in numbers]
print(squares)

Çıktı:

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

Öğeleri Filtreleme

Öğeleri filtrelemek için bir koşul da ekleyebilirsiniz. Örneğin, listeden yalnızca çift sayıları almak için:

even_squares = [x ** 2 for x in numbers if x % 2 == 0]
print(even_squares)

Çıktı:

[0, 4, 16, 36, 64]

Listelerin Listesini Düzleştirme

Eğer listelerden oluşan bir listeniz varsa ve onu düzleştirmek istiyorsanız, liste kavrayışını kullanabilirsiniz:

list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
flattened = [item for sublist in list_of_lists for item in sublist]
print(flattened)

Çıktı:

[1, 2, 3, 4, 5, 6, 7, 8, 9]

Gelişmiş Örnekler

Fonksiyonları Uygulama

Bir liste kavrayışı içinde işlevler uygulayabilirsiniz. Örneğin, bir dize listesini büyük harfe dönüştürmek için:

words = ['hello', 'world', 'python']
uppercase_words = [word.upper() for word in words]
print(uppercase_words)

Çıktı:

['HELLO', 'WORLD', 'PYTHON']

İç içe geçmiş kavramalar

Liste kavrayışları iç içe olabilir. Örneğin, i ve j'nin her ikisi de iki listenin öğeleri olduğu (i, j) tuple'larından oluşan bir liste oluşturmak için:

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
pairs = [(i, j) for i in list1 for j in list2]
print(pairs)

Çıktı:

[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]

Çözüm

Liste kavrayışları, Python'da listeler oluşturmak için güçlü ve özlü bir yol sunar. Birden fazla satır döngü kodunu tek bir satır kavrayışla değiştirerek kodunuzu basitleştirebilir ve daha okunabilir hale getirebilirler. Sözdizimleri ve yetenekleri konusunda daha rahat olmak için liste kavrayışlarını kullanma pratiği yapın.