Is there a way to hide global names from a function or class?
I want to be sure that a function doesn't use any global variables by
mistake. So hiding them would force a name error in the case that I
omit an initialization step. This might be a good way to quickly
catch some hard to find, but easy to fix, errors in large code blocks.
Examples:
def a(x):
# ...
x = y # x is assigned to global y unintentionally .
# ...
return x
def b(x):
# hide globals somehow
# ...
x = y # Cause a name error
# ...
return x
y = True
[color=blue][color=green][color=darkred]
>>>a(False):[/color][/color][/color]
True
[color=blue][color=green][color=darkred]
>>>b(False):[/color][/color][/color]
*** name error here ***
Ron_Adam
Comment