Kaydet (Commit) 43db0d6a authored tarafından Raymond Hettinger's avatar Raymond Hettinger

Fast size check for sub/super set tests

üst de6d6979
......@@ -239,6 +239,8 @@ class BaseSet(object):
def issubset(self, other):
"""Report whether another set contains this set."""
self._binary_sanity_check(other)
if len(self) > len(other): # Fast check for obvious cases
return False
for elt in self:
if elt not in other:
return False
......@@ -247,6 +249,8 @@ class BaseSet(object):
def issuperset(self, other):
"""Report whether this set contains another set."""
self._binary_sanity_check(other)
if len(self) < len(other): # Fast check for obvious cases
return False
for elt in other:
if elt not in self:
return False
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment