diff options
author | Tim Peters <tim.peters@gmail.com> | 2002-08-25 18:43:10 (GMT) |
---|---|---|
committer | Tim Peters <tim.peters@gmail.com> | 2002-08-25 18:43:10 (GMT) |
commit | ea76c98014e7f99974e3dcdbe168d45762bf627d (patch) | |
tree | f2729aa74a20f828711173c423fe1e44bdb70e62 /Lib/sets.py | |
parent | 93d8d48c15981ffbf9314d4f2aeeff008c227eb9 (diff) | |
download | cpython-ea76c98014e7f99974e3dcdbe168d45762bf627d.zip cpython-ea76c98014e7f99974e3dcdbe168d45762bf627d.tar.gz cpython-ea76c98014e7f99974e3dcdbe168d45762bf627d.tar.bz2 |
Implemented <, <=, >, >= for sets, giving subset and proper-subset
meanings. I did not add new, e.g., ispropersubset() methods; we're
going nuts on those, and, e.g., there was no "friendly name" for
== either.
Diffstat (limited to 'Lib/sets.py')
-rw-r--r-- | Lib/sets.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Lib/sets.py b/Lib/sets.py index ff0ace0..3897fb9 100644 --- a/Lib/sets.py +++ b/Lib/sets.py @@ -275,6 +275,18 @@ class BaseSet(object): return False return True + # Inequality comparisons using the is-subset relation. + __le__ = issubset + __ge__ = issuperset + + def __lt__(self, other): + self._binary_sanity_check(other) + return len(self) < len(other) and self.issubset(other) + + def __gt__(self, other): + self._binary_sanity_check(other) + return len(self) > len(other) and self.issuperset(other) + # Assorted helpers def _binary_sanity_check(self, other): |