Python'da İki Liste Nasıl Birleştirilir (Birleştir ve Uzat)

Python'da iki listeyi birleştirmenin ve birleştirmenin en iyi yollarını öğrenin. Artı operatörünü, genişletme yöntemini, liste açmayı ve zincirleme seçeneklerini karşılaştırın.

Bu Çözümü Editör'de deneyin

Genel Bakış

Liste veri kümelerini birleştirmek, sonuçları toplarken, veri gruplarını işlerken veya öğeleri bir koleksiyona eklerken sıklıkla yapılan bir işlemdir. Python, bir listeyi yerinde değiştirmek veya yeni bir liste oluşturmak isteyip istemediğinize bağlı olarak listeleri birleştirmenin birkaç yolunu sunar.

Mevcut iki listeyi birleştirerek yepyeni bir liste oluşturmak için en basit yaklaşım "+" birleştirme operatörünü kullanmaktır (örneğin, "liste3 = liste1 + liste2"). Alternatif olarak,Python 3.5+'da, son derece anlamlı olan ve liste oluşturma işleminin herhangi bir yerine kolayca ek öğeler eklemenize olanak tanıyan liste paketi açma sözdizimini `[*list1, *list2]' kullanabilirsiniz.

Başka bir listeden öğeler ekleyerek mevcut bir listeyi yerinde değiştirmek istiyorsanız, `.extend()` yöntemi en etkili seçimdir. Bu, yeni bir liste için bellek ayırmayı önler ve hedef listeyi doğrudan değiştirir. Bellekteki verileri çoğaltmadan birleştirilmiş listelerde bellek açısından verimli geçiş yapmak için `itertools.chain()` komutunu kullanabilirsiniz.

Kod ve Yürütme Çıkışı

Bu komut dosyası, operatörler, genişletme ve paket açma tekniklerini kullanarak iki listeyi birleştirmeyi gösterir.

merge_lists.py
Editör'de deneyin
list_a = [1, 2, 3]
list_b = [4, 5, 6]

# 1. Plus operator (creates a new list)
merged_plus = list_a + list_b
print("Using + operator:", merged_plus)

# 2. Unpacking operator (creates a new list)
merged_unpack = [*list_a, *list_b]
print("Using unpacking:", merged_unpack)

# 3. Extend method (modifies list_a in-place)
list_a.extend(list_b)
print("After extending list_a:", list_a)
Terminal Çıkışı
Using + operator: [1, 2, 3, 4, 5, 6]
Using unpacking: [1, 2, 3, 4, 5, 6]
After extending list_a: [1, 2, 3, 4, 5, 6]

Adım Adım Uygulama

  • Listeleri birleştirmek ve yeni bir birleştirilmiş liste döndürmek için + operatörünü kullanın.
  • List_b'nin tüm öğelerini doğrudan list_a'ya eklemek için list_a.extend(list_b) çağrısını yapın.
  • Her ikisinin de öğelerinden bir liste oluşturmak için yıldız işareti açma operatörünü [*list_a, *list_b] kullanın.

Sıkça Sorulan Sorular

Append() ve extend() arasındaki fark nedir?

Append(), liste bağımsız değişkeninin tamamını tek bir yuvalanmış öğe olarak eklerken, extend(), liste bağımsız değişkeninin paketini açar ve her öğeyi ayrı ayrı ekler.

Yinelenenleri kaldırırken listeleri nasıl birleştiririm?

Bunları birleştirebilir ve ardından sonucu bir kümeye aktarabilir veya önce bunları kümelere dönüştürebilirsiniz: list(set(list_a) | set(list_b)).

İlgili Konular

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.