namespace y scope
El namespace es un espacio dentro del cuál se encuentran definidos los objetos. built-ins, las variables globales de un módulo, las locales de una función… todas tienen su propio namespace.
El scope hace referencia a los espacios en los que está accesible un objeto o una variable:
built-in | global | funciones | locales
Cuando se define una variable, se puede utilizar global var1
para que sea accesible en cualquier scope; o nonlocal var1
para que vaya al scope inmediatamente superior.