UnboundLocalError: local variable 'er' referenced before assignment code example

Example 1: UnboundLocalError: local variable 'r' referenced before assignment

r = 0
list = ['apple','lime','orange']
def list_list(x):
    for i in x:
        r +=1
        print r
list_list(list)

Example 2: 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
"""