Always Awake/python 특징 정리1 Python은 Call by reference일까? Call by value일까? C나 C++를 공부한 적이 있다면 Call by reference와 Call by value에 대해 들어본 적이 있을 것이다. 두 방식은 함수의 인자 전달 방식인데, 각각 어떤 타입을 전달하느냐에 차이를 둔다. 1. Call by value : 변수를 복사한 값을 전달하는 방식 함수의 인자(argument)를 받을 때, 변수에 담긴 값 자체를 stack에다가 복사하여 넘겨준다. 예를 들어 변수 a가 있고 함수 def1가 있을 때, def1(a)에서 전달받은 a는 a 자체(주소 값)가 아니라 a의 복사 값, 레플리카이다. 따라서 함수 내에서 해당 인자를 조작하여 바꾸었다고 해도 원본 변수 a는 변하지 않는다. 원본을 건드리지 않아 안전하지만, 함수의 사용으로 해당 전역 변수를 바꾸고 싶을 때는 리턴 값을 .. 2019. 12. 24. 이전 1 다음