함수(Definition)
- 여러개의 실행 문을 하나로 묶은 단위 모듈이며 특정한 명령을 수행하는 하나의 독립적인 프로그램이다.
- 함수는 파이썬의 데이터 형과 흐름제어를 알고 특정한 작업을 수행하도록 설계된 독립적인 프로그램으로 모듈화를 기본으로 한다.
- 모듈화는 특정 기능 부분을 실행 할 수 있는 블록으로 만들고 여러 실행 블록을 연결해서 프로그래밍 하는것을 의미한다.
- 파이썬의 함수 모듈화: 별도의 파일에 정의된 함수와 지정된 데이터, 클래스들의 모임을 저장한 것을 의미한다.
- 파이썬의 함수는 원하는 원형의 실행 구문을 만들어 모듈화(.py -> .pyc[byte] -> pvm -> output)로 구현하고 호출하게 되면 실행되는 객체로 관리한다. 모듈 = 함수의 모듈화 + 기타모듈
함수의 특징
- 수행명령, 복잡한 연산등을 그룹으로 만들어서 새로운 함수로 선언, 함수 명을 호출해서 명령실행, 디버그, 오류수정 등이 가능하다.
- 반복 코드를 제거하여 효율적인 프로그램 가능
- 긴 코드를 함수로 나누기 때문에 가독성이 좋아지고 전체적으로 동작하는 프로그램으로 조합할 수 있다.
함수의 종류
- 라이브러리 함수 : 표준 함수 OR 내장함수, 시스템에 미리 있는 함
- 사용자 정의 함수 : 사용자가 직접 만드는 함수 : .py -> 전역패스설정
- Built-in 함수 : python 설치시 기본적으로 제공하는 함수 -> print(), type()
함수의 형식 : def 함수명(매개변수, 매개변수 = 초기값, *args(tuple), **args(dict))
명령수행문
return 값
함수의 선언과 호출
- 함수는 호출되면 함수의 정의부로 이동해 함수의 모든 내용을 순차적으로 실행한 후 종료되면 호출되었던 곳으로 돌아간다.
- 함수명()으로 호출하고 파라미터가 있는 함수를 호출할 떄는 함수의 원형에 맞는 파라미터의 자료형과 같은 파라미터로 전달해야만 호출이 가능하다.
- 함수는 매개변수로 초기값을 지정 할 수 있다. *args(매개변수) 로 지정하게 되면 순서있는 나열형 목록을 대입할 수 있다.
- 일반 매개 변수, 가변 매개변수가 선언될 떄는 가변 매개변수는 반드시 일반 매개변수 뒤에 하나만 선언된다. (*args : 가변 매개변수)
- 가변 매개변수 뒤에는 일반 매개변수가 올 수 없다.
- 함수는 크게 'return값'이 생략된 함수와 'datatype의 return 값'을 가진 원형으로 구분된다.
- Parameter : 함수, 메서드의 입력변수 명 / Argument : 함수, 메서드의 입력
'IT > Python' 카테고리의 다른 글
파이썬 기본 개요 - 클래스(Class) 1 (0) | 2021.04.26 |
---|---|
파이썬 기본 개요 - 함수(2), 람다함수 (0) | 2021.04.26 |
파이썬 기본 개요 - 제어문 (0) | 2021.04.22 |
파이썬 기본 개요 - 시퀀스(2), 표준입출력 (0) | 2021.04.21 |
파이썬 기본 개요 - 연산자, 시퀀스(1) (0) | 2021.04.20 |