Python seti

|

Genellikle, verilerle çalƒ±≈üƒ±rken, yinelenen deƒüerler içeremeyen ve deƒüerleri deƒüi≈ütirilemeyen bir veri listesi depolamak isteyeceksiniz. √ñrneƒüin, bir markette satƒ±n alma kimliklerinin bir listesini yapƒ±yorsanƒ±z, her bir kimliƒüin benzersiz olmasƒ±nƒ± istersiniz ve listenizdeki deƒüerleri kimsenin deƒüi≈ütirebilmesini istemezsiniz.

Python set nesnesinin devreye girdiƒüi yer burasƒ±dƒ±r. Kume, yalnƒ±zca benzersiz deƒüerler içerebilen sƒ±rasƒ±z bir √∂ƒüe koleksiyonudur.

Bu √∂ƒüretici, √∂rneklere atƒ±fta bulunarak tartƒ±≈üacaktƒ±r: Python kumelerinin temelleri ve bir kumeye deƒüer ekleme ve 烱karma gibi genel i≈ülemleri nasƒ±l gerçekle≈ütirebileceƒüiniz.

Python Kumeleri

Python yerleşik kume veri yapısı, matematikteki kume fikrine benzer.

Python kumeleri sƒ±fƒ±r veya daha fazla √∂ƒüe içerebilir ve kumedeki her √∂ƒüe için tanƒ±mlanmƒ±≈ü bir sƒ±ra yoktur. Bir kumede depolanan her √∂ƒüe benzersizdir, bu nedenle hiçbir kopya olamaz ve kumedeki her bir bireysel deƒüer deƒüi≈ütirilemez.

Bir kumedeki tek tek deƒüerler deƒüi≈ütirilemese de kumenin kendisi deƒüi≈üebilir. olmak. Bu, kumemize √∂ƒüe ekleyip 烱karabileceƒüimiz anlamƒ±na gelir.

Kume yapƒ±sƒ±, içinde depoladƒ±ƒüƒ±mƒ±z verilerle çalƒ±≈ümak için kullanabileceƒüimiz bir dizi matematiksel i≈ülemle birlikte geldiƒüinden kullanƒ±≈ülƒ±dƒ±r. bir kume.

Bir Python Kumesi Oluşturun

Python’da kumeler, virgulle ayrƒ±lmƒ±≈ü bir √∂ƒüe (veya "eleman‚") listesi olarak tanƒ±mlanƒ±r. Liste daha sonra kume parantezleri ({}) içine alƒ±nƒ±r.

Katƒ±lƒ±mcƒ±larƒ±n %81’i, bir eƒüitim kampƒ±na katƒ±ldƒ±ktan sonra teknik i≈ü beklentileri konusunda daha emin hissettiklerini belirtti. Bugun bir eƒüitim kampƒ± ile e≈üle≈ütirin.

Ortalama bir eƒüitim kampƒ± mezunu, bir eƒüitim kampƒ±na ba≈ülamaktan ilk i≈üini bulmaya kadar, kariyer geçi≈üinde altƒ± aydan daha az zaman harcadƒ±.

Python setleri herhangi bir sayƒ±yƒ± depolayabilir. ve bir kume içindeki her √∂ƒüe farklƒ± veri turleri kullanabilir. Bu nedenle, bir kume hem bir tamsayƒ± veya bir dize ya da bir dize, kayan nokta ve bir demet saklayabilir. Ancak kumeler, ba≈üka bir kume, s√∂zluk veya liste gibi deƒüi≈üken veri turlerini depolayamaz.

Öğrencinin teslim ettiği ev ödevlerinin listesini depolayan bir kume oluşturmak istediğimizi varsayalım. bir İngilizce sınıfı. Bu seti aşağıdaki kodu kullanarak oluşturabiliriz:

Kodumuz şunu döndurur:

{‘Worksheet #5’, ‘Worksheet #4’, ‘Worksheet #7’, ‘End of Topic Review #2’}

Kodumuzda bir set tanƒ±mladƒ±k d√∂rt deƒüeri olan atamalar olarak adlandƒ±rƒ±lƒ±r. Ardƒ±ndan atama setinin içeriƒüini konsola yazdƒ±rdƒ±k. Kumeler √∂ƒüelerini belirli bir sƒ±rada saklamadƒ±ƒüƒ±ndan deƒüerlerimizin rastgele bir sƒ±rayla d√∂ndurulduƒüunu g√∂rebilirsiniz.

Bir Kumeyi Değiştirme

Bir kume olu≈üturduƒüunuzda, kumedeki √∂ƒüelerin deƒüerlerini deƒüi≈ütiremezsiniz, ancak kumeye √∂ƒüe ekleyebilir ve bir kumeden √∂ƒüeleri 烱karƒ±n.

Bir Kumeye Öğe Ekleme

Python kumesine √∂ƒüe eklemek için add() y√∂ntem. Bir √∂ƒürencinin √áalƒ±≈üma Sayfasƒ± #8’i az √∂nce teslim ettiƒüini ve √∂ƒürencinin √∂devinin teslim edilmesini takip etmek için setimizi guncellemek istediƒüimizi varsayalƒ±m. Bunu ≈üu kodu kullanarak yapabiliriz:

Kodumuz şunu döndurur:

{‘Çalışma Sayfası #8’, ‘Çalışma Sayfası #4’, ‘Çalışma Sayfası #5’, ‘Konu Sonu İncelemesi #2’, ‘Worksheet #7’}

Görduğunuz gibi Worksheet #8 setimize eklendi.

Ayrƒ±ca, bir kumeye birden çok √∂ƒüe eklemek istiyorsanƒ±z, update() √∂ƒüesini kullanabilirsiniz. y√∂ntem. update() y√∂ntemi, bir kumeye parametre olarak eklemek istediƒüiniz √∂ƒüelerin listesini kabul eder ve ardƒ±ndan bu √∂ƒüeleri bir kumeye ekler.

Bir √∂ƒürenci hem #8 hem de #9 çalƒ±≈üma sayfalarƒ±nƒ± teslim etti. Bu kodu kullanarak verilen bu yeni atamalarƒ± yansƒ±tmak için kumemizi deƒüi≈ütirebiliriz:

Kodumuz şunu döndurur:

{‘Çalışma Sayfası #9’, ‘Konu Sonu İnceleme #2’, ‘Çalışma Sayfası #8’, ‘Çalışma Sayfası #7’, ‘Çalışma Sayfası #4’, ‘Çalışma Sayfası #5’}

Artƒ±k setimiz iki yeni deƒüer içeriyor: √áalƒ±≈üma Sayfasƒ± #8 ve √áalƒ±≈üma Sayfasƒ± #9.

Bir Kumeden Öğe Kaldırma

Bir kumeden bir √∂ƒüeyi kaldƒ±rmak için discard() √∂ƒüesini kullanabilirsiniz. veya remove().

discard() i≈ülevi bir √∂ƒüeyi kumeden kaldƒ±rƒ±r ve bir √∂ƒüe varsa hiçbir ≈üey d√∂ndurmez bir kumede bulunmaz. remove() i≈ülevi, bir kumeden bir √∂ƒüeyi kaldƒ±rmayƒ± deneyecek ve bu √∂ƒüe yoksa, bir hata ortaya 烱kacaktƒ±r.

Diyelim ki, √áalƒ±≈üma Sayfasƒ± #9’u bir √∂ƒürencinin ev √∂devleri kaydƒ±mƒ±zdan kaldƒ±rƒ±n, çunku √∂devi yeniden yapmalarƒ± istenmi≈ütir. Bunu ≈üu kodu kullanarak yapabiliriz:

"Python.Engineering hayatƒ±ma en çok ihtiyacƒ±m olduƒüu anda girdi ve hƒ±zlƒ± bir ≈üekilde bir eƒüitim kampƒ±yla e≈üle≈ümeme yardƒ±mcƒ± oldu. Mezun olduktan iki ay sonra, hayalimdeki i≈üi buldum. hayattaki deƒüerlerim ve hedeflerim ile!"

Venus, Rockbot’ta Yazƒ±lƒ±m Muhendisi

Kodumuz şunu döndurur:

{‘End of Topic Review #2’, ‘Çalışma Sayfası #5’, ‘Çalışma Sayfası #4’, ‘Çalışma Sayfası #8’, ‘Çalışma Sayfası #7’}

Worksheet #9 değerinin setimizden kaldırıldığını görebilirsiniz. Bunu discard() yöntemini kullanarak başardık.

Bir Kumeyi Temizle

Bir kumeyi temizlemek için temizle komutunu kullanabilirsiniz. () y√∂ntemi. Bir √∂ƒürencinin √∂devlerinin kaydƒ±nƒ±, yƒ±l sonu olduƒüu ve artƒ±k bilgileri saklamamƒ±z gerekmediƒüi için silmek istediƒüimizi varsayalƒ±m. Bunu ≈üu kodu kullanarak yapabiliriz:

Kodumuz şunu döndurur: {}. Bu, boş kumemizi yansıtır.

Bir Kumenin Dönuş Uzunluğu

Bir kumede kaç √∂ƒüenin saklandƒ±ƒüƒ±nƒ± √∂ƒürenmek için len() y√∂ntem.

Bir √∂ƒürencinin kaç tane ev √∂devi teslim ettiƒüini bulmak istediƒüimizi varsayalƒ±m. Bunu ≈üu kodu kullanarak yapabiliriz:

Kodumuz ≈üunu d√∂ndurur: 6. Kodumuzda, √∂nce atamalaratamalar kumesinde kaç √∂ƒüenin saklandƒ±ƒüƒ±nƒ± bulmak için len() y√∂ntemini kullanƒ±rƒ±z.

Python Kume İşlemleri

Veri depolamak için kume kullanmanƒ±n avantajlarƒ±ndan biri, kumelerin matematiksel kumeleri desteklemesidir. operasyonlar. ≈ûimdi uç ana kume i≈üleminin nasƒ±l çalƒ±≈ütƒ±ƒüƒ±nƒ± inceleyelim.

Bu kume i≈ülemleri bir kumenin içeriƒüini deƒüi≈ütirmez. Bunun yerine, mevcut bir kume uzerinde bir hesaplama yaparlar.

Set Union

union() yöntemi, tum kumelerin bir kumesini oluşturmamıza olanak tanır. iki kumeden öğeler.

Birle≈ütirmek istediƒüimiz bir √∂ƒürencinin √∂devlerinden olu≈üan iki listemiz olduƒüunu varsayalƒ±m. Bir liste, bir √∂ƒürencinin √∂deviyle ilgili verileri içerir ve diƒüeri, bir √∂ƒürencinin tamamladƒ±ƒüƒ± kompozisyon √∂devlerinin bir listesini içerir. Bu kodu kullanarak bu listeleri birle≈ütirebiliriz:

Bizim kod döndurur:

{‘Çalışma Sayfası #7’, ‘Deneme #2’, ‘Çalışma Sayfası #4’, ‘Deneme #1’, ‘Çalışma Sayfası #5’}< br>

Kodumuzda, iki kumemizi birle≈ütirmek için union() y√∂ntemini kullanƒ±yoruz. Yeni birle≈ütirilen kumenin deƒüerini ev √∂devi deƒüi≈ükenine atarƒ±z. Ardƒ±ndan, homework deƒüi≈ükeninin deƒüerini yazdƒ±rdƒ±k.

Alternatif olarak, şu kodu kullanabilirdik:

"|‚" operat√∂r bir birle≈üim kumesi i≈ülemi gerçekle≈ütirir. Kodumuz birle≈ütirilmi≈ü bir kume d√∂ndurur:

{‘Deneme #2’, ‘Çalışma Sayfası #4’, ‘Çalışma Sayfası #5’, ‘Deneme #1’, ‘Çalışma Sayfası # 7’}

Set Intersection

intersection() yöntemi, iki kume arasında ortak olan öğelerin bir listesini oluşturmanıza olanak tanır.< br>

Diyelim ki bir öğrencinin teslim ettiği makalelerin bir listesi ve yayınlanan makalelerin bir listesi var. Bir öğrencinin henuz hangi makaleleri teslim etmediğini bilmek istiyorsak, bir kesişme yöntemi uygulayabiliriz.

Kullanacağımız kod şudur:

Kodumuz şunu döndurur:

{‘Essay #1’, ‘Essay #2’}

Bu √∂rnekte , hem essays_handed_in hem de essays_issued kumelerinde bulunan tum √∂ƒüeleri bulmak için intersection() y√∂ntemini kullanƒ±rƒ±z. due deƒüi≈ükenine i≈ülem, ardƒ±ndan konsola yazdƒ±rƒ±rƒ±z.

Ayrƒ±ca, gerçekle≈ütirmek için & operat√∂runu kullanabiliriz. Bir kume kesi≈üim i≈ülemi yani, iki kumemizde bir kesi≈üim yapmak istiyorsak daha √∂nce, ≈üu kodu kullanabilirdik:

Kodumuz şunu döndurur:

{‘Essay #1’, ‘Essay #2’}

Set Difference

difference() yöntemi, bir kumede bulunan ve başka bir kumede bulunmayan öğeleri bulmanızı sağlar.

Bir öğrencinin teslim ettiği ve henuz not verilmeyen tum denemelerin bir listesini oluşturmak istediğimizi varsayalım. Bunu şu kodu kullanarak yapabiliriz:

Kodumuz şunu döndurur:

{"Essay #2‚"}

Bu kodda, essays_handed_in arasƒ±ndaki farkƒ± bulmak için difference() y√∂ntemini kullandƒ±k. ve essays_graded kumeleri. Alternatif olarak, - operat√∂runu ≈üu ≈üekilde kullanabiliriz:

Kodumuz şunu döndurur:

{"Essay #2‚"}

Kodumuzda aynƒ± sonuç d√∂ndurulur. Ancak difference() set y√∂ntemini kullanmak yerine, iki kume arasƒ±ndaki farkƒ± bulmak için bir kontrol gerçekle≈ütiren - operat√∂runu kullandƒ±k.

Sonuç

Python kume veri yapısı, sırasız öğe koleksiyonlarını saklamanıza izin verir.

Bir kumedeki her √∂ƒüe benzersiz olmalƒ±dƒ±r, b√∂ylece hiçbir kopya bulunamaz, ve bir kumenin içeriƒüi, kumeye eklendikten sonra deƒüi≈ütirilemez.

Bu eğitimde, örnekler referans alınarak Python kumelerinin temelleri ve kumeler tarafından sunulan ana işlemler tartışılmıştır.< br>

Ke≈üfetmeniz gereken daha çok ≈üey olmasƒ±na raƒümen, setlerle neler yapabileceƒüinizin yalnƒ±zca yuzeyini kazƒ±dƒ±k. . Artƒ±k bir profesyonel gibi Python set() y√∂ntemini kullanmaya ba≈ülamaya hazƒ±rsƒ±nƒ±z!


Python, dunyanƒ±n her yerindeki profesyonel geli≈ütirme ortamlarƒ±nda kullanƒ±lƒ±r. veri analizinden web geli≈ütirmeye kadar her ≈üey için dunya. ucretsiz Python.Engineering uygulamasƒ±nƒ± indirin bugun Python programlamadaki kariyer yollarƒ± hakkƒ±nda daha fazla bilgi edinmek için.