import time
start=time.time()
def amicable(number):
total=0
for i in range(1,number):
if number%i==0:total=total+i
return (total)
r=[]
eps=10000
for i in range(1,eps+1):
j,s=amicable(i),amicable(j) <-- 이부분 왜 오류 날까요? 변수 이렇게 선언해도 되던데
if i==s and i<j:r.append([i,j])
for i in r:
print(i)
print(format("---%.4s seconds---" %(time.time() - start)))
대입연산자에서는 우변부터 실행되는데 우변에서 amicable(j)를 실행하고 싶지만 좌변이 실행되지 않은 그 시점에서는 j가 선언조차 되어있지 않기때문에 'j is not defined'라는 오류를 내뿜는 거임