Python Veri Yapıları : Set

Sena
3 min readOct 26, 2022

--

Merhaba, ben Sena. Elektrik Elektronik Mühendisiyim. SistersLab’in Toplum Gönüllüleri Vakfı (https://www.tog.org.tr/en/) tarafından desteklenen Women in Tech Academy proje katılımcılarından biriyim.

Proje, 20–28 yaş aralığında beyanı kadın olan bireyleri 3 ay boyunca yazılım eğitimi ve destekleyici eğitimlerle güçlendirerek sektörde iş gücüne katılımını artırmayı hedefliyor.

Projeyle ilgili detaylı bilgiye bu bağlantıdan ulaşabilirsiniz: https://sisterslab.co/women-in-tech-academy/

Bu proje kapsamında öğrendiklerimi Medium’a aktarmayı hedefliyorum. Bu yazımda Python’da yer alan veri yapılardan biri olan set’ten bahsedeceğim. Set matematikteki küme ile aynı mantıkta kullanırız.

Created by Sena

Set’in özellikleri ise

  • Index ile erişilemezler. Unordered yani sıralı değillerdir. (Bir sete erişmek istediğinizde sıralama her seferinde farklılaşacaktır.)
  • Set’ler değiştirilemezler, yani immutable. Tupledan farkı sete yeni eleman ekleyip çıkarabiliyoruz. Ama setin içerisindeki bir elemanı değiştiremiyoruz.
  • {} parantez içerisinde tanımlanır. Elemanlar virgül ile ayrılır.
  • Farklı tipte veri taşımaya izin verir.
  • Aynı değere sahip iki eleman yer almaz. Duplicate veri taşımazlar.

Set oluşturma

Ancak set’lerde boş bir set direkt oluşturamayız. Oluşturmak istediğimizde aşağıdaki gibi oluştururuz .

Eğer aşağıdaki gibi boş bir set oluşturmaya kalkarsak type dict çıkar.

Elemanlara Erişim

For döngüsünü kullanarak elemanlara erişiriz.

Set İçerisinde Eleman Kontrolü

İf ile sorgulayarak set’in içinde dediğimiz eleman var mı yok mu kontrol edebiliriz.

Bir Set’e Eleman Ekleme

  • add() ile sete yeni bir eleman eklenir.
  • update() ile de birden fazla ekleme işlemi yapılır.

Bir Set içerisinden Eleman Silme

  • remove()
  • discard()
  • pop()
  • clear()
  • del set

Remove()

Remove ile istediğimiz elemanı sileriz.

Ancak remove ile olmayan bir elemanı sileme işlemi yaptığımızda hata alırız.

Discard()

Discard’a remove gibi eleman siler tek farkı olmayan bir eleman sildiğimizde hata vermez.

Pop()

Set içindeki herhangi bir elemanı siler.

Clear()

Set’in içindeki tüm elemanları siler.

Del()

Set’i tamamen siler.

Set Üzerinde Kullanabileceğimiz Operatörler

  • union() -> |
  • intersection() -> &
  • difference() -> -
  • symmetric_difference() -> ^
Created by Sena

Union()

İki seti birleştirmek için kullanılır.

Intersection()

İki küme içerisinde yer alan ortak elemanları döndürür.

intersection_update

Bu operatörde update ile aynı işlemi yapar ancak ek olarak my_set1 günceller.

Difference

Kümelerdeki fark işlemi gibi my_set1'den my_set2'yi çıkarttığımızdaki sonucu gösterir.

difference_update

Aynı şekilde yeni bir set oluşturmadan sonucu direk mevcut set’e aktarır.

Symmetric Difference

İki set’in kesişimi dışındaki elemanları alan opearatördür.

Set Kopyalama

Kopyalama işlemleri 3 şekilde yapılır.

  • copy()
  • = oparatörü
  • set()

Subset(alt küme) ve Superset(üst küme)

Bir set’e alt kümesi mi yoksa üst kümesimi onu kontrol ederiz.

isdisjoint( )

İki kümenin ayrık olup olmadığını kontrol eder.

Frozenset

Değişmez bir set oluşturmak istenildiğinde kullanılır.

Bu yazımda Set’in özellikleri, set oluşturma, set’e eleman ekleme-silme işlemleri, set üzerinde kullanabileceğimiz operatörler, set kopyalama, frozenset gibi kavramlara değindim. Python hakkında daha fazla bilgiye erişmek isterseniz geçmiş yazılarımı okuyabilirsiniz. Daha fazlası için github hesabımı takip edebilirsiniz.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Sena
Sena

No responses yet

Write a response