
print("---------------")
l_l = []
for i in range(3):
    print(f'loop: i:{i} a:{hex(id(i))}')
    l_l.append(lambda: print(f'lambda: i:{i} a:{hex(id(i))}'))
    
for l in l_l: l()

print("---------------")

l_l2 = []
for i in range(3):
    print(f'loop: i:{i} a:{hex(id(i))}')
    l_l2.append(lambda x=i: print(f'lambda: i:{x} a:{hex(id(x))}'))
    
for l in l_l2: l()

print("---------------")
l_l3 = [ lambda: print(f'lambda: i:{i} a:{hex(id(i))}') for i in range(3) ]
for l in l_l3: l()  

print("---------------")
l_l4 = ( lambda: print(f'lambda: i:{i} a:{hex(id(i))}') for i in range(3) )
for l in l_l4: l()  
# your code goes here