Question: What is typically regarded as more Pythonic/better/faster to use, the reverse method or the reversed built-in function? 

Both in action:

```
_list = list(xrange(4))

print _list

rlist = list(reversed(_list))

print rlist

_list.reverse()

print _list

```

Answer: 
There seems to be a great difference. I really thought it's the other way round.
Why is rearranging the values in a list faster than creating a new one from an iterator ?

```
from decorators import bench

_list = range(10 ** 6)

@ bench
def foo():
  list(reversed(_list))

@ bench
def bar():
  _list.reverse()

foo()
bar()

print foo.time
print bar.time

```

> 
> 0.167278051376   
> 
>  0.0122621059418
> 
> 
>
It is always better to use reversed() if eventually you are going to modify the list in iterator making list immutable and working with immutable data is always better especially when your doing functional programming.