local variable 'cp' referenced before assignment code example

Example: unboundlocalerror local variable referenced before assignment python

"""
This happens when python thinks that your variable is local
(the scope is only within a specific function) and/or that
you have not assigned a value to the variable before in this
specific function (scope).

try:
 - assigning the variable a value within the function
 - Passing the variable to the function using it when calling the function
 - Declaring the variable as global (bad practice)
 
Read more about this error in the source
"""