본문 바로가기

반응형

가변인자

(3)
[Python] 함수 #4 파라미터 패킹 이번 강의에서는 파이썬 함수 인자(parameter)의 개수를 유연하게 지정 할 수 있는(가변 인자) 파라미터 패킹(parameter packing)에 대해 살펴 보도록 하겠다. 목차 함수 소개 디폴트 파라미터 주의 사항 파라미터 언패킹 >> 파라미터 패킹 함수 객체 일급 객체(first class object) 람다(lambda) 파라미터 패킹 파이썬에서 파라미터 패킹(parameter packing)이란 고정되지 않은 여러개의 인자를 하나의 시퀀스 객체로 묶어 함수에게 전달하는 것을 말한다. 고정되지 않은 여러개의 인자(parameter)를 묶은 하나의 시퀀스 인자 바꿔 말하면 파라미터 패킹을 통해 '가변 인자 함수'가 가능하다는 것이다. 우리가 자주 써왔던 print표준 함수가 좋은 파라미터 패킹과..
[Python] 함수 #3 파라미터 언패킹 이번에 살펴볼 파라미터 패킹과 언패킹은 포스트가 길어져 두 장에 나뉘어 작성 되었다. 이번 포스트에서는 언패킹에 대해 알아보고, 바로 이어지는 다음 포스트에서 패킹에 대해 같이 알아보도록 하겠다. 목차 함수 소개 디폴트 파라미터 주의 사항 >> 파라미터 언패킹 파라미터 패킹 함수 객체 일급 객체(first class object) 람다(lambda) 파라미터 언팩(unpack) 파라메터 언패킹(unpacking)이란 시퀀스 객체(list, tuple, set, dictionary)가 함수의 인자로 넘겨지는 경우, 시퀀스 객체의 각 요소들을 개별 변수로 풀어서, 각각의 변수로 함수의 인자로 전달하는 기능을 말한다. 글로 설명하면 설명이 어려우니 빠르게 예제 중심으로 설명하도록 한다. 언패킹이란? "시퀀스 ..
가변인자를 이용한 함수(va_list) 가변인자 함수 ANSI C 는 인수의 타입이나 개수를 다양하게 취할 수 있는 함수를 선언하기 위해 '가변인자 함수(varages 함수 or variadic 함수)'라는 구문을 정의 하고 있다. 1. 왜 가변인자 함수들이 사용되는가? 원래 C 함수들은 고정된 개수의 인수들을 취한다. 함수를 정의할 때, 인수의 개수와 인수의 데이터 타입을 정의하면 변경이 불가능 하다. '가변인자 함수'는 함수가 호출 될때 마다 인수의 개수를 변경 할 수 있고 타입에 있어서의 변경도 가능하다. 2. 어떻게 가변 인자 함수를 정의하고 사용하는가? 1) #include '가변인자 함수'라는 것을 사용하기 위해서는 'stdarg.h' 헤더 파일이 필요하다. ※ 오래된 C 에서는 'varargs.h'를 사용해서 다양한 개수의 변수를..

반응형