Main Content

Python 함수 인수 이해하기

Python® 문서에서 Python 함수를 호출하는 방법을 확인할 수 있습니다. Python 함수 시그니처는 MATLAB® 함수 시그니처와 유사합니다. 하지만, Python에는 MATLAB 사용자에게 익숙하지 않을 수 있는 구문이 있습니다.

위치 인수

위치 인수는 위치를 기준으로 전달됩니다. 이러한 인수는 함수 시그니처의 시작 부분에 나옵니다.

Python 시그니처MATLAB 사용법

abs(X)
인수 X는 필수입니다.

>> py.abs(-99)

일부 함수는 인수를 지정하지 않는 것을 포함하여 임의의 위치 인수 시퀀스를 받습니다. Python에서 이러한 인수는 이름 앞에 * 문자를 추가하는 방식으로 정의됩니다.

Python 시그니처MATLAB 사용법

itertools.zip_longest(*iterables)
iterables 인수는 필수가 아니며, 그럴 경우 함수는 길이가 0인 이터레이터를 반환합니다.

두 개의 목록으로부터 요소를 집계합니다.
>> py.itertools.zip_longest(... py.list({1:10}),py.list({'a','b'}));


길이가 0인 이터레이터를 만듭니다.
>> py.itertools.zip_longest;

print(*objects)

>> words = {'Hello','World!'};
>> py.print(words{:})

키워드 인수

키워드 인수는 식별자가 앞에 옵니다. 명명된 인수라고도 하는 키워드 인수는 원하는 대로 순서를 지정할 수 있습니다. 키워드 인수는 MATLAB의 이름-값 인수와 유사합니다.

Python 시그니처MATLAB 사용법

print(*objects,sep='',end='\n',
file=sys.stdout)

sep, endfile은 키워드 인수입니다.

end의 값을 변경합니다.
>> py.print('string',end='--')

이 예제에서는 file 키워드에 대한 디폴트 값을 사용합니다. 몇몇 텍스트 변수를 만들고 값을 표시합니다.

x1 = py.str('c:');
x2 = py.os.curdir;
x3 = py.os.getenv('foo');
py.print(x1,x2,x3)
c: . None

별도의 라인에 값을 표시하려면 새 줄 \n을 구분 기호로 사용하십시오.

py.print(x1,x2,x3,sep=sprintf('\n'))
c:
.
None

임의 개수의 키워드 인수

Python은 이름 앞에 ** 문자를 추가하여 임의 개수의 키워드 인수를 정의합니다.

Python 시그니처MATLAB 사용법

dict(**kwarg)

>> D = py.dict(Joe=100,Jack=101)

선택적 인수

선택적 인수는 필수가 아닌 인수입니다.

Python 시그니처MATLAB 사용법

random.randrange(start,stop[,step])
인수 step은 선택 사항입니다.

>> py.random.randrange(1,100)

선택적 인수는 디폴트 값을 가질 수 있습니다. 디폴트 값은 등호 =와 디폴트 값으로 나타냅니다.

Python 시그니처MATLAB 사용법

print(*objects,sep='',end='\n',
file=sys.stdout)

file의 디폴트 값은 sys.stdout입니다.

디폴트 키워드 값을 사용하여 두 값을 출력합니다.
>> py.print(2,'2')