There are more than a few interesting points in here but this is funny to me coming from someone who is seemingly well versed in python:
Mistake #5
numbers = [n for n in range(10)]
this should be: range(10)
numbers = [n for n in range(10)]
this should be: range(10)
Though, really, even there, while the list comprehension works, its kind of an awkward construction to use that instead of:
numbers = list(range(10))