Explanation of Python variables and scopes, and explanation of python variable Fields
Scope
In python, the scope is divided into four situations: L: local, local scope, that is, the variables defined in the function;
E: enclosing: The local scope of nested parent functions, that is, the local scope of the upper-level functions that contain this function, but not global;
G: globa, global variable, which is defined at the module level; B: built-in, variable in the system fixed module, such as int and bytearray. The priority order of search variables is: local scope> outer scope> global in the current module> python built-in scope, that is, LEGB.
x = int(2.9) # int built-ing_count = 0 # globaldef outer():o_count = 1 # enclosingdef inner():i_count = 2 # local
Of course, local is relative to enclosing, And the enclosing variable is also local relative to the upper layer.
# Define variable a >>> a = 0 >>> print a0 # define FUNCTION p () >>> def p ():... print a... >>> p () 0 # define the function p2 () >>> def p2 ():... print... a = 3... print a... >>> p2 () # An error occurred while running. external variable a is referenced first and cannot be assigned Traceback (most recent call last): File "<interactive input>", line 1, in <module> File "<interactive input>", line 2, in p2UnboundLocalError: local variable 'A' referenced before assignment # define function p3 () >>> def p3 () :... a = 3 # assign values without referencing... print a... >>> p3 () 3 >>> print a0 # external variable a has not changed
The above is a detailed explanation of the variables and scopes in Python introduced by the editor. If you have any questions, please leave a message and the editor will reply to you in time. Thank you very much for your support for the help House website!