ProgrammingLang/python

[python] 8. 함수

jinkwon.kim 2018. 11. 9. 23:00
728x90
반응형

[python] 8. 함수




1. 함수는 왜 필요한가?

  - 코드의 재사용

  - 재 사용성 때문에 코드의 생상성과 품질이 향상된다.


2. 함수의 정의

  - 함수 선언은 def로 시작 

  - 함수의 시작과 끝은 들여쓰기로(indentation)로 구분

  - 시작과 끝을 명시하지 않음, 들여쓰기가 사라지면 끝난 것이다.

    일반적으로 2줄을 뛰어 주는 것으로 구분한다.

  - 함수 이름 뒤에오는()안에 파라미터를 생성, 파라미터는 존재 하거나, 존재 하지 않아도 된다.

  - 함수 끝에 return 문은 있어도 되고 없어도 된다. 없으면 none이 리턴 된다.


 


3. 함수에 파라미터 및 return

  1) 파라미터 넘기는 방법

    (1) 위치 파라미터

      - 정해진 파라미터 위치에 맞게 인자를 넘겨야 한다.


    (2) 키워드 파라미터

      - 파라미터 명(키워드)를 사용하여 위치게 상관없이 인자를 전달 할 수 있다.


      * 파라미터 : 함수에서 받는 값

      * 인자 : 함수에 전달하는 값


    (3) 기본 파라미터 값 지정

      - 파라미터에 기본 값을 지정할 수 있다. 

      - 함수를 호출 시 인자를 입력 하지 않으면, 기본으로 설정된 파라미터 값을 사용한다.

      - 파라미터가 적게 들어올 경우 첫 번째 파라미터부터 채워진다.


    (4) 가변 파라미터 

      - 함수의 파라미터에 *를 붙여서 여러개의 인자를 가변 파라미터로 처리 한다.

      - 함수의 파라미터에 **를 붙여서 여러개의 인자를 가변 파라미터로 처리 한다 그러나 가변 파라미터가

         key,value 형태의 딕셔러니 형태로 처리 된된다.

         <좌측 : 가변 파라미터, 우측 : key, value 가변 파라미터>

 

 2) return 

    - 함수를 종료하고 함수를 호출한 곳으로 돌아감 

    - 함수는 실행 할 때 모든 함수 관련 리소스(변수 포함)를 스택에 저장하고, return시 스택에서 제거 된다.

    - 파이썬에서는 다중 값을 리턴 값으로 전달 가능(실제 튜퓰에 저장되어 리턴됨)

    - return을 사용하지 않거나, return만 적었을 때 도 함수가 종료(None 객체를 돌려줌)


  



728x90
반응형