파이썬
파이썬 강좌 번외편. 클로저(Closure)
파이썬 강좌 번외편. 클로저(Closure)
2019.11.21이번 강좌는 클로저(Closure)에 대해 알아보도록 하겠습니다. 클로저는 위키백과의 정의를 빌어온자면 '컴퓨터 언어에서 클로저는 일급 객체 함수의 개념을 이용하여 스코프에 묶인 변수를 바인딩 하기 위한 일종의 기술이다.'라고 합니다. 파이썬을 처음 접하시는 분이라면 이 말이 무슨 말인지 전혀 감도 오지 않을 것입니다. 먼저 우리는 일급 객체 함수가 무엇을 말하는지 알아볼 필요가 있습니다. 일급 객체(First-class function) 파이썬에서 함수는 일급 객체입니다. 이는 우리가 평소에 숫자나 문자열, 클래스를 다루는 것처럼, 함수도 다른 객체와 동일하게 취급할 수 있다는 말과 같습니다. 즉, 함수를 매개변수로 넘기거나 다른 변수에 대입할 수 있으며, 반환값으로도 사용이 가능합니다. 심지어 리스트..
파이썬 강좌 번외편. 재귀 함수
파이썬 강좌 번외편. 재귀 함수
2019.03.29우리는 함수 내에서 또 다른 함수를 호출할 수 있습니다. 그리고 물론 자기 자신을 호출할 수도 있습니다. 여기서 함수 내에서 자기 자신을 호출하는 함수를 재귀 함수라고 부릅니다. 이 재귀 함수는 팩토리얼이나 피보나치 수열을 만드는 등과 같은 다양한 수학 문제를 해결하는 데 매우 유용합니다. 예제를 보며 직접 한번 살펴보도록 하겠습니다. >>> def recursive(num): print(num) num += 1 recursive(num) # 자기 자신을 호출한다! >>> recursive(10) 10 11 12 13 … 위의 예제를 직접 실행시켜보면 함수 recursive()가 자기 자신을 호출하고, 호출된 함수가 다시 자기 자신을 호출하며 끊임없이 변수 num의 값을 출력하고 있는 것을 볼 수 있습니..