Python
[개미의 걸음 Python 23차시] 내장함수와 사용자 정의 함수(return, 조기리턴, 매개변수)
IT개미 데이터
2020. 7. 23. 23:23
728x90
함수
- 함수를 호출한다는 것은 함수를 사용한다는 의미
- 매개변수는 함수를 호출하기 위해 입력하는 자료
- 리턴값은 함수를 호출해서 나오는 결과값
함수의 종류
내장함수[=표준함수] | 파이썬에서 기본적으로 내장하고 있어 표준으로 제공하는 함수 |
사용자 정의함수 | 파이썬에서 사용자가 임의로 만들어서 사용하는 함수 |
① 표준함수
파이썬에서 표준으로 제공하는 함수
② 사용자 정의 함수
파이썬에서 사용자 정의 함수를 만들려면 def 키워드를 사용
def 함수명(매개변수1, 매개변수2, ...):
문장
return 키워드
함수를 종료시키는 키워드
- return을 입력한 다음 줄에 입력한 내용들은 출력되지 않음
- return과 함께 입력한 내용들을 출력
- 아무것도 return하지 않으면 None을 출력
# 조기리턴[early returns]
더보기
사용자 지정함수에서 if else조건문을 만들 때 else를 사용하지 않고 바로 return을 사용하는 것.
조기리턴을 사용하면 들여쓰기 단계가 줄어들어 더 간단하게 코드를 작성할 수 있음
[조기리턴 예제 보기 ↓]
2020/07/23 - [Python] - [개미의 걸음 Python 23차시] 재귀함수와 ★메모화★ with 팩토리얼, 피보나치 수열
지역변수와 전역변수
지역 변수 | 함수 안에서만 사용되는 변수 |
전역 변수 | 함수 밖에서도 사용할 수 있는 함수 |
매개변수의 이해
① 가변 매개변수
매개변수를 원하는 만큼 받을 수 있는 변수
def 함수명(매개변수1, 매개변수2, ... , *가변 매개변수):
문장
def 함수명(매개변수1, 매개변수2, ... , **가변 매개변수):
문장
- 가변 매개변수 뒤에는 일반 매개변수가 올 수 없음[제일 마지막에 작성]
- 가변 매개변수는 하나만 사용가능
- *를 한 번만 사용하면 가변 매개변수로 입력되는 자료형은 튜플이 됨!
- *를 두 번 사용할 경우 가변 매개변수로 입력되는 자료형은 딕셔너리가 됨!
- 즉, **를 사용할 때에는 키 값을 반드시 입력해준다!!
② 기본 매개변수
매개변수를 입력하지 않았을 경우, 매개변수에 들어가는 기본값을 설정하는 변수
def 함수명(매개변수1, 매개변수2,.... 매개변수n):
문장
- 기본 매개변수 뒤에는 일반 매개변수가 올 수 없음
- 일반적으로, def함수에서 설정한 매개변수보다 적은 매개변수를 넣으면 오류 발생
- def함수를 통해 매개변수를 지정할 때, 매개변수 값이 없을 때 출력될 값을 정할 수 있음
③ 키워드 매개변수
함수를 사용할 때 기본 매개변수 이름을 함께 입력하는 매개변수
- 가변 매개변수와 기본 매개변수를 함께 사용하기 위한 매개변수
키워드 매개변수가 필요한 이유
- 가변 매개변수가 기본 매개변수보다 앞에 올 때, 기본 매개변수를 입력하지 않으면 n=2로 인식하고 출력됨
- 하지만 기본 매개변수를 입력할 경우, 이를 기본 매개변수로 인식하지 못하고 가변 매개변수로 인식
- 기본 매개변수가 가변 매개변수보다 앞에 올 때에는 n의 자리에 "python을"이 들어가므로 오류발생
728x90