Skip to content

Instantly share code, notes, and snippets.

@orez-
Created December 1, 2016 17:50
Show Gist options
  • Save orez-/ab178212d7c8068678cca29237bd329c to your computer and use it in GitHub Desktop.
Save orez-/ab178212d7c8068678cca29237bd329c to your computer and use it in GitHub Desktop.
try:
y = reversed(enumerate(range(5, 15, 2)))
except TypeError:
print("A problem.")
class enumerate(enumerate):
def __init__(self, iterable, start=0):
self.iterable = iterable
self.start = start
def __reversed__(self):
try:
rev_iter = self.iterable.__reversed__
end = self.iterable.__len__
except AttributeError:
# Standard explosion
return super().__reversed__()
i = end() + self.start - 1
for elem in rev_iter():
yield i, elem
i -= 1
x = reversed(enumerate(range(5, 15, 2)))
print("A solution!")
print(list(x))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment