Write a generator function reverse_iter that accepts an iterable sequence and yields the items in reverse order without using built-in functions or methods. After using the function however, the original list should be unchanged. An example output is below:
it = reverse_iter(nums)
next(it) == 4
True
next(it)
3
next(it)
2
next(it)
1
Note that the above should work even if the list is changed to a tuple. I have no idea how to do this without using something like reverse() or reversed(). Maybe utilize a -1 slice? Any Ideas?