From: Raymond Hettinger Date: Tue, 24 Feb 2009 12:23:23 +0000 (+0000) Subject: Backport 69934: Register xrange() as a Sequence. X-Git-Tag: v2.7a1~1954 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8c56f8890eefdfd769d864aa901db5cf4586b4cd;p=python Backport 69934: Register xrange() as a Sequence. --- diff --git a/Lib/_abcoll.py b/Lib/_abcoll.py index 36aca958c7..942a72c0ce 100644 --- a/Lib/_abcoll.py +++ b/Lib/_abcoll.py @@ -519,6 +519,7 @@ class Sequence(Sized, Iterable, Container): Sequence.register(tuple) Sequence.register(basestring) Sequence.register(buffer) +Sequence.register(xrange) class MutableSequence(Sequence): diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py index 4901eae8e5..9767afffc0 100644 --- a/Lib/test/test_collections.py +++ b/Lib/test/test_collections.py @@ -406,6 +406,9 @@ class TestCollectionABCs(ABCTestCase): self.failUnless(isinstance(sample(), Sequence)) self.failUnless(issubclass(sample, Sequence)) self.failUnless(issubclass(basestring, Sequence)) + self.failUnless(isinstance(range(10), Sequence)) + self.failUnless(issubclass(xrange, Sequence)) + self.failUnless(issubclass(str, Sequence)) self.validate_abstract_methods(Sequence, '__contains__', '__iter__', '__len__', '__getitem__')