Python kümesi, bir listedeki veya bir öğe dizisindeki farklı değerleri filtrelemek için benzersiz bir değişmez bilgidir. Bir Python listesi, sözlük veya tuple'ın aksine, kopyaları kabul etmez. Bu yüzden değerli bir veri temizleme aracı olabilir.
Ama nasıl bir set oluşturup onu Python'da kullanabilirsin? Bunu bu yazıda açıklayacağız.
Python Setlerinin Özellikleri
Yinelenenleri kabul etmemeye ek olarak, bir set değişmezi, onu diğer veri türlerinden ayıran başka özelliklere sahiptir. İşte özelliklerinden bazıları:
- Değişmezdir: Bu, bir kümeyi oluşturduktan sonra değerlerini değiştiremeyeceğiniz anlamına gelir.
- Bir set hazır değeri, her bir tane oluşturduğunuzda dinamik düzenleme döndürür. Aslında, bir setteki öğeler sırasızdır.
- Sırasız öğeler sunduğundan, liste ve sözlük değişmezlerinin aksine, bir kümenin değerlerini dizinlerinden alamazsınız.
Python Seti Nasıl Oluşturulur ve Kullanılır
Artık bir Python setinin temel özelliklerini bildiğinize göre. Bunu programınızda kullanabileceğiniz bazı yolları görelim.
Python'da bir küme oluşturmak için küme parantezi kullanırsınız. Dolayısıyla küme, küme parantezleri içinde virgülle ayrılmış öğeler listesidir:
mySet = {1, 2, "MUO", "Google"}
yazdır (mySet)
Çıktı: {1, 2, "MUO", "Google"}
Ayrıca başka herhangi bir veri türünü bir kümeye dönüştürebilirsiniz. Örneğin, aşağıdaki kod bir listeyi bir kümeye dönüştürür:
myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
yazdır (mySet)
Çıktı: {1, 2, "MUO", "Google"}
Emin olmak için veri türünü kontrol edebilirsiniz. mySet:
myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
print (type (mySet))
Çıktı:
Daha önce bahsettiğimiz gibi, bir set kopyaları kabul etmez. Yinelenen değerleri kaldırarak bir diziyi temizlemek istediğinizde bu özellik yararlı olabilir.
Aşağıdaki kod, bir listedeki kopyaları kaldırır ve çıktıyı bir Python kümesi olarak sunar:
myList = [1, 2, 2 "MUO", "MUO", "Google", "Google"]
mySet = set (myList)
yazdır (mySet)
Çıktı: {1, 2, 'MUO', 'Google'}
Bir kümenin filtreleme özelliğini daha fazla göstermek için, bir kümenin uzunluğunu yazdırdığınızda, yinelenen değerleri saymaz:
mySet = {1, 2, 2, "MUO", "MUO", "Google", "Google"}
baskı (len (mySet))
Çıkış: 4
Bir kümenin daha iyi bir kullanım durumunu görmek için, aşağıdaki dizideki kopyaları kaldıralım. Bir dizideki benzersiz anahtarları sorgulamaya benzer.
Bunu yapmak için bir sözlüğü bir kümeye dönüştürün:
myDiction = {
"Mango": 2, "Turuncu": 2, "havuç": 2, "MUO": "teknoloji",
"MUO": "web", "Google": "arama", "Google": "motor"
}
uniqueSet = set (myDiction)
print ("Bunlar benzersiz anahtarlardır: {}". format (uniqueSet))
Çıktı: Bunlar benzersiz anahtarlardır: {'Google', 'Mango', 'MUO', 'Orange', 'carrot'}
Yukarıdaki dönüştürme, yinelenen öğeleri diziden otomatik olarak kaldırır.
Yukarıdaki kodu değiştirebilirsiniz for döngüsü kullanmak daha net hale getirmek için:
uniqueSet'teki uniqueler için:
baskı (benzersiz)
Ayrıca iki sete de katılabilirsiniz. Birlik() yöntem:
setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA.union (setB)
baskı (newSet)
Çıktı: {1, 3, 4, 5, 6}
Ancak, yukarıdaki kod iki kümeyi birleştirir ve yinelenen değerleri kaldırır.
Alternatif olarak, boruyu da kullanabilirsiniz. | Python'da kümeleri birleştirme işlevi:
setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA | setB
baskı (newSet)
Çıktı: {1, 3, 4, 5, 6}
Python'da iki küme arasındaki farkı da bulabilirsiniz:
setA = {1, 3, 5}
setB = {2, 4, 5,}
baskı (setA.difference (setB))
Çıktı: {1, 3}
A ve B kümeleri arasındaki simetrik farkı bulabilirsiniz. Bu yöntem, her iki kümedeki öğeleri döndürür, ancak kesişimlerini hariç tutar. Bunun nasıl çalıştığını görelim:
setA = {1, 3, 5}
setB = {2, 4, 5,}
yazdır (setA ^ setB)
Çıktı: {1, 2, 3, 4}
Alternatif olarak, simetrik_fark () yöntem:
setA = {1, 3, 5}
setB = {2, 4, 5,}
baskı (setA.symmetric_difference (setB))
Çıktı: {1, 2, 3, 4}
Ayrıca kümelerin kesişimini nasıl bulabileceğinizi de aşağıda görelim:
setA = {1, 3, 5}
setB = {1, 4, 6}
setC = {1, 5, 4}
newSet = setA.interection (setB, setC)
baskı (newSet)
Çıktı: {1}
Yapabiliyorken Python'da bir listeye ekle, bir Python seti için aynı şeyi yapamazsınız. Ancak, setin sonuna bir öğe ekleyebilirsiniz. Ekle işlevi.
Ama Python Ekle işlev bir bağımsız değişkeni kabul eder, bu nedenle bir kümeye yalnızca bir demet ekleyebilirsiniz. Bu, iç içe geçmiş bir küme döndürür:
setA = {1, 3, 5} setC = {1, 3}
newSet = 1, 6
setC.add (newSet)
baskı (setC)
Çıktı: {1, (1, 6), 3}
Python seti, isdisjoint () iki setin ayrık olup olmadığını kontrol etme yöntemi. Daha sonra bir Boolean döndürür:
setA = {1, 3, 5}
setB = {1, 4, 6}
findDisjoint = setA.isdisjoint (setB)
print ("setA, B'nin bir ayrıklığıdır" .format (findDisjoint))
Çıktı: setA'nın B'nin ayrık olması Yanlış
Bir kümenin başka bir kümenin alt kümesi olup olmadığını kontrol etmek için isdisjoint () ile issubset ():
findSubset = setA.issubset (setB)
Bir kümeden bir öğeyi kaldırabilirsiniz:
setA = {1, 3, 5}
setA.remove (5)
baskı (setA)
Çıktı: {1, 3}
açık() yöntem, bir kümedeki öğeleri temizler ve boş bir küme döndürür:
setA = {1, 3, 5}
setA.clear ()
baskı (setA)
Çıktı: set ()
Bir kümeden rastgele bir öğeyi kaldırabilir ve set.pop () yöntem:
setA = {1, 3, 5}
baskı (setA.pop ())
Ayrıca bir Python kümesini update () yöntemiyle de güncelleyebilirsiniz:
setA = {1, 'b'}
setB = {2, 4, 5,}
baskı (setA.update (setB))
baskı (setA)
Çıktı: {1, 2, 4, 5, 'b'}
Python Setleriyle Oynayın
Python'da bir seti nasıl kullanabileceğinizi görmüş olsak da, onu kodunuza uygulamanın başka pratik yolları da vardır. Gördüğünüz gibi, verileri Python ile temizlerken bile kullanışlı olabilir.
Bir kümeye ek olarak, diğer Python veri türleri veya dizilerinin birçok kullanımı ve çeşitli uygulamaları vardır. Onları daha iyi asmak için onlarla oynamaya çalışın.
Diziler ve listeler, programlamadaki en yararlı veri yapılarından bazılarıdır - ancak çok az kişi bunları tam potansiyeliyle kullanmaktadır.
Sonrakini Oku
- Programlama
- Python
Idowu, akıllı teknoloji ve üretkenlik konusunda tutkulu. Boş zamanlarında kodlama ile oynar ve sıkıldığında satranç tahtasına geçer, ancak arada bir rutinden uzaklaşmayı da sever. İnsanlara modern teknolojinin etrafındaki yolu gösterme tutkusu, onu daha fazla yazmaya motive ediyor.
Haber bültenimize abone ol
Teknoloji ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için haber bültenimize katılın!
Bir adım daha…!
Lütfen size az önce gönderdiğimiz e-postadaki e-posta adresinizi onaylayın.