Bu sanırım mutable
olarak ayarlanmış olabilir.Bir öğeden bir öğe nasıl kaldırılır?
Temel olarak, set.discard(element)
kullanarak bir öğeden bir öğeyi kaldırabilirim. Ancak, set.discard(element)
'un kendisi None
döndürür. Ama güncellenmiş kümenin bir kopyasını almak istiyorum. Örneğin, bir dizi setim varsa, liste kavrama işlemlerini kullanarak güncellenmiş bir kopyasını rahatlıkla nasıl edinebilirim?
örnek kod: Sen set difference operator kullanabilirsiniz
[None, None]
[set(['a']), set(['b'])]
SOF böyle muhteşem bir yerdir! Hem @ thefourtheye hem de @roippi cevapları güzel çalışıyor! @roippi cevabı hız avantajına sahiptir ve daha geniş bir uygulamaya sahip olabilir. Ben sadece @fourtheye cevabını kabul ettim çünkü bu durum benim durumumda elverişli olduğu için, set listesinin bir liste listesinden oluşturulduğu anlamına gelir. Bu yüzden ben sadece '[set (x) - {''} x listesindeki kodu yazabilirim. Ama ikinize de çok teşekkürler! –
Liste kavraması, orijinal setlerde değişiklik yapılmadan setlerin bağımsız bir listesiyle sonuçlanıyor mu, yoksa orijinali değiştirmeli mi? Orijinali değiştirmek isterseniz, liste kavramasını hiç kullanmamak en iyisidir; bir 'for' döngüsü daha uygundur. – user2357112
@ user2357112 Orijinali değiştirmek istiyorum (gerçekten önemli değil ama veri kümesi büyük olduğundan, kopya oluşturmak istemiyorum). Bu durumda 'döngü için' neden liste anlamadan daha iyi? –