Why a range_iterator when a range is reversed?
问题 I can subscript a range object: >>> r = range(4) >>> r range(0, 4) >>> r[3] 3 >>> for i in r: print(i) 0 1 2 3 >>> list(r) [0, 1, 2, 3] But, if I call reversed on the same range object: >>> r = reversed(range(4)) >>> r <range_iterator object at memaddr> >>> for i in r: print(i) 3 2 1 0 >>> r[3] TypeError: 'range_iterator' object is not subscriptable # ? >>> range(r) TypeError: 'range_iterator' cannot be interpreted as an integer # ? >>> list(r) [] # ? uhmm Hmm... Acting kinda like a generator