아래 함수를 실행하기 전에 l1은 빈 목록이지만 함수를 실행 한 후 왜 [1, 2, 3]입니까?python 함수 변수 범위
def copylist(lsource, ldest):
for e in lsource:
ldest.append(e)
print 'ldest =',ldest
l1 = []
l2 = [1, 2, 3]
copylist(l2, l1)
print l1 # displays [1, 2, 3]
print l2 # displays [1, 2, 3]
그게 당신이 할 함수를 작성한거야? 'lsource'의 데이터를'ldest'에 복사하기 때문에'l1'에 복사합니다. – BrenBarn
답변에 대한 의견을 기반으로 위에서 질문 한 것보다 더 많은 질문이 있기 때문에 나는 다운 voting입니다. 완전한 답을 원하면 완전한 질문을해야합니다. – SethMMorton
함수가 제대로 작동하기 때문입니다. 너는 무엇을 기대 했는가? –