For example, there is a list:

`s = [1,2,3,4]` 

from which we want to get new list

`s1 = [1.5, 2.5, 3.5]` (length was reduced).

How to compute this with the most efficient way in Python (e.g. map, generator comprehensions)?

*Update:* 
OK, this example was very artificial. Accidently, I'm trying to find the fastest way to compute new list from old. And it will be interesting for me to see optimal ways (minor memory usage, for example)