본문 바로가기
IT/Python

파이썬 기본 개요 - 함수의 개념

by 천빈 2021. 4. 23.

함수(Definition)

  • 여러개의 실행 문을 하나로 묶은 단위 모듈이며 특정한 명령을 수행하는 하나의 독립적인 프로그램이다.
  • 함수는 파이썬의 데이터 형과 흐름제어를 알고 특정한 작업을 수행하도록 설계된 독립적인 프로그램으로 모듈화를 기본으로 한다.
  • 모듈화는 특정 기능 부분을 실행 할 수 있는 블록으로 만들고 여러 실행 블록을 연결해서 프로그래밍 하는것을 의미한다.
  • 파이썬의 함수 모듈화: 별도의 파일에 정의된 함수와 지정된 데이터, 클래스들의 모임을 저장한 것을 의미한다.
  • 파이썬의 함수는 원하는 원형의 실행 구문을 만들어 모듈화(.py -> .pyc[byte] -> pvm -> output)로 구현하고 호출하게 되면 실행되는 객체로 관리한다. 모듈 = 함수의 모듈화 + 기타모듈

함수의 특징

  • 수행명령, 복잡한 연산등을 그룹으로 만들어서 새로운 함수로 선언, 함수 명을 호출해서 명령실행, 디버그, 오류수정 등이 가능하다.
  • 반복 코드를 제거하여 효율적인 프로그램 가능
  • 긴 코드를 함수로 나누기 때문에 가독성이 좋아지고 전체적으로 동작하는 프로그램으로 조합할 수 있다.

함수의 종류

  • 라이브러리 함수 : 표준 함수 OR 내장함수, 시스템에 미리 있는 함
  • 사용자 정의 함수 : 사용자가 직접 만드는 함수 : .py -> 전역패스설정
  • Built-in 함수 : python 설치시 기본적으로 제공하는 함수 -> print(), type() 

help를 통해 본 def 설명

함수의 형식 : def 함수명(매개변수, 매개변수 = 초기값, *args(tuple), **args(dict))

                      명령수행문

                       return 값

 

함수의 선언과 호출

  • 함수는 호출되면 함수의 정의부로 이동해 함수의 모든 내용을 순차적으로 실행한 후 종료되면 호출되었던 곳으로 돌아간다.
  • 함수명()으로 호출하고 파라미터가 있는 함수를 호출할 떄는 함수의 원형에 맞는 파라미터의 자료형과 같은 파라미터로 전달해야만 호출이 가능하다.
    • 함수는 매개변수로 초기값을 지정 할 수 있다. *args(매개변수) 로 지정하게 되면 순서있는 나열형 목록을 대입할 수 있다.
    • 일반 매개 변수, 가변 매개변수가 선언될 떄는 가변 매개변수는 반드시 일반 매개변수 뒤에 하나만 선언된다. (*args : 가변 매개변수)
    • 가변 매개변수 뒤에는 일반 매개변수가 올 수 없다.
  • 함수는 크게 'return값'이 생략된 함수와 'datatype의 return 값'을 가진 원형으로 구분된다.
  • Parameter : 함수, 메서드의 입력변수 명 / Argument : 함수, 메서드의 입력