인프런 커뮤니티 질문&답변

주니어부기님의 프로필 이미지
주니어부기

작성한 질문수

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

일급함수 첫 강의에서 궁금한 점이 있습니다.

작성

·

94

0

var_func = factorial

print([var_func(i) for i in range(1,11) if i % 2])

팩토리얼 함수는 생략하겠습니다.

위의 리스트를 print(factorial(i) for i in range(1,11) if i % 2] 로 구해도 되는데

var_func이란 변수에 factorial 함수를 할당하는 방법으로 가르쳐주신 것은

"변수에 함수를 할당할 수 있음"을 보여주기 위함일 뿐

factorial 함수를 직접 리스트에서 부르는 방법과 또다른 차이점은 없는 건가요?

답변 1

1

좋은사람님의 프로필 이미지
좋은사람
지식공유자

네 맞습니다.

함수 자체를 할당가능한 것을 보여주기 위한 예제입니다.

다만, print 문으로 즉시 실행했을 경우에는 cpython내에서 변수에 할당이 줄어드는 효과는 볼 수 있습니다.

함수의 재사용이 없다면, 즉시실행문으로 작성하시는 것도 좋습니다.

감사합니다.

주니어부기님의 프로필 이미지
주니어부기

작성한 질문수

질문하기