I want to find the unique elements in A =[set([1,2]),set([1,2]), set([1])]
in Python. I tried set(A); it didn't work. Is there any easy way to do it?
Asked
Active
Viewed 1,108 times
1

Martijn Pieters
- 1,048,767
- 296
- 4,058
- 3,343

pmjn6
- 307
- 1
- 4
- 14
1 Answers
4
Convert your sets to frozenset()
objects:
set(frozenset(s) for s in A)
A frozenset()
is an immutable set object, and more importantly, hashable. Thus it can be stored in a set()
.
Demo:
>>> A = [set([1,2]),set([1,2]), set([1])]
>>> set(frozenset(s) for s in A)
set([frozenset([1, 2]), frozenset([1])])

Martijn Pieters
- 1,048,767
- 296
- 4,058
- 3,343