how does python interpreter work