문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 Python/문법 (문단 편집) === 일반 함수 === [[Python]]의 함수 정의 키워드는 {{{def}}}이다. 예시를 보자. <예시> {{{#!syntax python def multiply(a, b): return a*b }}} 이 함수는 a, b 두 숫자를 받아서 돌려준다. 하지만 굳이 인자를 가져오지 않아도 global 이라는 명령어를 사용하여 함수 안에서도 전역변수 사용을 명시할 수 있다. [* 명시한다고 표현한 이유는 함수가 정의될 때 스코프에 전역변수를 포함하기 때문이다. 하지만 함수 내에서 값을 수정하면 실제 전역변수는 수정되지 않아 global 키워드로 수정할 수 있다.] {{{#!syntax python a = 3 b = 5 def multiply(): global a, b return a*b }}} Python에서 변수가 여럿인 함수를 짤 때 사용할 수 있는 방법으로 asterisk(*)를 사용하는 것이 있다. 변수명 앞에 asterisk를 하나 붙이면, 입력받은 변수들의 튜플을 의미한다. {{{#!syntax python def function(*args): print(args) function(1, 2, 3, 4) # (1, 2, 3, 4)를 출력한다. }}} Asterisk를 2개 붙인 것은 키워드 변수를 의미한다. 이때, (키워드 - 값)의 딕셔너리 형태가 된다. 이때, 키워드는 str이다. {{{#!syntax python def function(**kwargs): print(kwargs) function(a = 1, b = 2) # {'a': 1, 'b': 2}를 출력한다. }}} 일반 변수, 키워드 변수, asterisk를 붙인 변수, double asterisk를 붙인 변수가 모두 있다면, 키워드 > 일반 > ** 변수 > * 변수 순서로 인식된다. {{{#!syntax python def function(a, b = 0, *args, **kwargs): print("a =", a) print("b =", b) print("args = ", args) print("kwargs =", kwargs) function(1, 2, 3, b = 4, i = 5) }}} 결과: {{{#!syntax python a = 1 b = 4 args = (2, 3) kwargs = {'i': 5} }}}저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기