Variables are scoped just fine from my point of view. What do you mean by proper?
for x in ...:
and then use x outside of the loop.The fact that you can do such a thing in JavaScript is exactly why JavaScript is such a mess of a language with its globally-declared and hoisted variables.
That sort of practice has never made sense, and is not a language design that Python should follow.