Python'da Listeler Nasıl Birleştirilir

Python Da Listeler Nasil Birlestirilir



Python listeleri, öğe koleksiyonlarının depolanmasına ve değiştirilmesine olanak tanıyan çok yönlü ve yaygın olarak kullanılan veri yapılarıdır. Listelerle çalışırken yaygın olarak yapılan işlemlerden biri, yeni bir liste oluşturmak için iki veya daha fazla listeyi birleştirmeyi içeren birleştirme işlemidir. Bu işlem özellikle verileri birleştirirken veya küçük listelerden daha büyük bir liste oluştururken kullanışlıdır. Liste birleştirme, çeşitli yöntemler kullanılarak gerçekleştirilebilir ve bu teknikleri anlamak, Python'da listelerle verimli bir şekilde çalışmak için esastır. İster sayı, dizi veya karmaşık nesnelerden oluşan listeleri birleştiriyor olun, liste birleştirme konusunda uzmanlaşmak, verileri çeşitli şekillerde değiştirmenize ve düzenlemenize olanak tanır.

Örnek 1: Listeleri “+” Operatörüyle Birleştirme

Listeleri birleştirmek için Python'da “+” operatörünü kullanabiliriz. “+” operatörünü kullanarak iki veya daha fazla listeyi birleştirerek yeni bir liste oluşturabilirsiniz. Listelerde “+” operatörünü kullandığınızda yeni bir liste oluşturulur ve orijinal listelerin elemanları göründükleri sıraya göre yeni listeye kopyalanır.

İşte basit bir örnek:







sayfa 1 = [ 1 , 2 , 3 ]

liste2 = [ 4 , 5 , 6 ]

sonuç_listesi = liste1 + liste2

Yazdır ( sonuç_listesi )

Bu çizimde iki listemiz var: “list1” ve “list2”. Bunları tek bir listeye entegre etmek için “+” operatörünü kullanıyoruz. Listelerle birlikte kullanıldığında, “+” operatörü onları birleştirir; bu, ikinci listenin elemanlarını birinci listenin sonuna birleştirdiği anlamına gelir. Dolayısıyla, 'sonuç_listesi = liste1 + liste2' çalıştırıldıktan sonra, 'sonuç_listesi' hem 'liste1' hem de 'list2'nin öğelerini birleştirildikleri sırayla içerecektir.





Bu yöntem kısa olsa da, kopya oluşturmanın ek yükü nedeniyle büyük listeler için verimli olmayabilecek yeni bir liste oluşturduğunu unutmayın.





Örnek 2: Extend() Yöntemini Kullanmak

Yinelenebilir bir öğenin öğeleri, extend() yöntemi kullanılarak mevcut bir listenin sonuna eklenebilir. Yeni bir liste oluşturan “+” operatörünün aksine, orijinal listeyi yerinde değiştirir.

Diyelim ki bir sınıftaki öğrencilerin bir listesi var ve bu listeyi extend() yöntemini kullanarak yakın zamanda katılan yeni öğrencilerin adlarını ekleyerek genişletmek istiyoruz. İşte bu konuda nasıl devam edebileceğiniz:



sınıf_öğrencileri = [ 'Alice' , 'Bella' , 'Charlie' ]

yeni öğrenciler = [ 'Davut' , 'Eva' , 'Adem' ]

class_students. uzatmak ( yeni öğrenciler )

Yazdır ( 'Güncellenmiş Öğrenci Listesi:' , sınıf_öğrencileri )

Bu örnekte “sınıf_öğrencileri” olan orijinal liste mevcut öğrencilerin adlarını içermektedir. “Yeni_öğrenciler” listesi sınıfa yeni katılan öğrencilerin adlarını içerir. Extend() yöntemini uygulayarak yeni öğrencilerin adlarını orijinal listenin sonuna ekliyoruz.

Örnek 3: Birleştirme için “+=” Operatörünün Uygulanması

“+=” operatörü extend() yönteminin kısaltmasıdır. Sağ taraftaki listenin öğelerini sol taraftaki listede birleştirerek listeyi yerinde değiştirir.

Diyelim ki favori renklerden oluşan bir listemiz var ve bunu “+=” operatörünü kullanarak daha fazla renk ekleyerek güncellemek istiyoruz.

favori renkler = [ 'mavi' , 'yeşil' , 'kırmızı' ]

ek_renkler = [ 'mor' , 'turuncu' , 'sarı' ]

favori_renkler + = ek_renkler

Yazdır ( 'Güncellenmiş Favori Renkler:' , favori renkler )

Bu senaryoda, “favori_renkler” ile temsil edilen favori renklerimizin bir listesiyle başlıyoruz. Daha sonra 'ek_renkler' listesine eklemek istediğimiz bazı yeni renklerimiz var. “+= operatörünü” kullanarak yeni renkleri mevcut favorilerimizle birleştirerek “favorite_colors” listesini değiştiriyoruz.

İşlem sonrasında “Güncellenmiş Favori Renklerimiz” çıktısını aldığımızda aşağıdaki sonucu görebiliriz:

Örnek 4: “*” Operatörünün Kullanımı

Liste çoğaltma için “*” operatörü kullanılabilir. Ancak listelere uygulandığında öğeleri tekrarlayarak bunları birleştirebilir.

İşte bir örnek:

orijinal_liste = [ 1 , 2 , 3 ]

birleştirilmiş_liste = orijinal_liste * 3

Yazdır ( birleştirilmiş_liste )

Bu durumda [1, 2, 3] elemanlarını içeren bir “orijinal_liste” ile başlıyoruz. “*” operatörünü kullanarak orijinal listedeki elemanların üç tekrarından oluşan “birleştirilmiş_liste” olan yeni bir liste oluşturuyoruz.

Bu yaklaşım birleştirme için daha az yaygın olsa da Python'un operatörlerinin esnekliğini sergiliyor.

Örnek 5: Itertools.chain() İşlevini Uygulama

itertools.chain() işlevi, 'itertools' modülünün bir parçasıdır ve yinelenebilir öğeleri (listeler, tuple'lar veya diğer yinelenebilir nesneler gibi) tek bir 'yinelenebilir' olarak birleştirmek için kullanılır. Diğer bazı birleştirme yöntemlerinden farklı olarak, itertools.chain() yeni bir liste oluşturmaz ancak yinelenebilir girdilerin öğeleri üzerinde bir yineleyici üretir.

itibaren itertools içe aktarmak zincir

L1 = [ 1 , 2 , 3 ]

L2 = [ 'X' , 'Ve' , 'İle' ]

birleştirilmiş_yinelenebilir = zincir ( L1 , L2 )

sonuç_listesi = liste ( birleştirilmiş_yinelenebilir )

Yazdır ( sonuç_listesi )

Verilen örnekte iki listemiz var; “L1” sayısal değerleri [1, 2, 3] içerir ve “L2” alfabetik karakterleri [“x”, “y”, “z”] içerir. itertools.chain() işlevini kullanarak, bu listeleri 'concatenate_iterable' ile temsil edilen tek bir yinelenebilirde birleştiririz. Daha sonra list() işlevi, yinelenebilir olanı birleştirilmiş listeyle sonuçlanan bir listeye dönüştürmek için uygulanır: [1, 2, 3, 'x', 'y', 'z'].

Örnek 6: Liste Dilimleme

Bir dizi indeks sağlayarak liste dilimleme, listenin bir alt kümesini almamıza olanak sağlayan bir tekniktir. Başlangıç, bitiş ve isteğe bağlı olarak adım değerlerini belirtmek için köşeli parantezler içinde iki nokta üst üste (:) operatörünün kullanılmasını içerir.

İşte örnek kod:

gerçek_liste = [ 1 , 2 , 3 , 4 , 5 ]

dilimlenmiş_liste = gerçek_liste [ 1 : 4 ]

Yazdır ( dilimlenmiş_liste )

Resme, [1, 2, 3, 4, 5] elemanlarını içeren “gerçek_liste” olarak adlandırılan orijinal bir sayı listesiyle başlıyoruz. Python'un güçlü bir özelliği olan liste dilimlemeyi kullanarak listenin belirli bir bölümünü çıkarıyoruz. Bu örnekte 'actual_list[1:4]' dilimi kullanılır ve indeks 1'den indeks 3'e kadar olan elemanları seçer (ancak indeks 4'ten değil). Sonuç, dilimlenmiş kısmı [2, 3, 4] içeren 'sliced_list' adlı yeni bir listedir.

Örnek 7: Zip() İşleviyle Birleştirme

Zip() işlevi, birden çok yinelenebilir öğeden öğeleri birleştirerek karşılık gelen öğelerin çiftlerini veya demetlerini oluşturur. Bu çiftleri oluşturmak için her yinelemenin aynı dizindeki öğeleri kullanılır.

öğrenciler = [ 'Alice' , 'Bob' , 'Charlie' ]

notlar = [ 85 , 92 , 78 ]

student_grade_pairs = zip ( öğrenciler , notlar )

sonuç_dict = dikte etmek ( student_grade_pairs )

Yazdır ( 'Öğrenci Sınıfı Çiftleri:' , sonuç_dict )

Bu örnekte zip() işlevi, 'öğrenciler' listesindeki öğrenci adlarını 'notlar' listesindeki karşılık gelen notlarıyla eşleştirir; bu, her öğrencinin kendi notuyla ilişkilendirildiği bir sözlükle sonuçlanır.

Çözüm

Sonuç olarak Python, listeleri birleştirmek için her biri kendi avantajlarına sahip çok sayıda yol sunar. Basit '+' operatöründen daha incelikli zip() işlevine kadar çeşitli yöntemleri araştırdıkça, Python'un çeşitli programlama stillerine ve tercihlerine hitap ettiği ortaya çıktı. Eldeki işe bağlı olarak okunabilirlik, bellek verimliliği ve işlenen veri türü gibi faktörler hangi yöntemin en iyi olduğunu belirleyecektir.