Earlier quoted context omitted.
Every time I see this pattern, a part of me dies inside. collection = [] for i in data: collection.append(fn(i)) Why not just [fn(i) for i in data] ?
First example is way, WAY, more readable. Honestly, if I didn't read the first one I would probably not have figured out what the other one does without research.
The Map one exactly describe what it does. it 'maps' the data. Which means it describes it in the way function fn is telling it. Which is really easy to read if you understand english...