
- 결과값을 반환하는 것을 함수로, 결과값을 반환하지 않는 것을 프로시저로 구분함
- 클래스에 속하면 메서드, 그냥이면 함수
- print, input 등도 사실 미리 만들어 둔 함수이다. 내장 함수
- 함수 명명 법은 변수 명명법과 같다.
# 영문, 숫자 사용 가능
# 문자부터 시작, 숫자부터 안 됨
# _로 시작 가능
# 특수문자 사용 불가
# 파이썬 키워드 사용 불가
- def => define
- 함수 정의 방법 => def 함수이름(Parameter1, 매개변수2...):
- 함수 호출 방법 => 함수 이름(Argument1, 인수2...)
- 정의할 때는 매개변수, 호출할 때는 인수 라고 부름
- 코드 작성 순서 중요. 함수를 만들기 전에 먼저 호출하면 안 됨.
- Docstrings, Documentation strings : ' ' or " " or ''' ''' or """ """
# """독스트링""" 권장
# 독스트링 아래쪽으로 코딩 해야함

- return으로 반환하는 값은 반환값이라고 하며 함수를 호출해준 바깥에 결과를 알려주기 위해 사용
- return 실행 이후 아래 코드는 실행 하지 않음. 보통 if와 조합해서 특정 조건일 때 함수 중간에서 바로 빠져나옴.
- 여러 값을 return하면 tuple을 반환 함

- 위치인수, Positional argument : 인수를 순서대로 넣는 것
- Unpacking : 함수(*리스트), 함수(*튜플). 인수의 갯수가 같아야 함.
- 가변인수 함수: 함수의 매개변수의 갯수가 고정이 아님. def 함수이름(*변수):
# 없을 수도, 한개 일 수도, 10개일 수도 있음
# args 말고 다른 변수로 해도 됨

- 고정 매개변수와 가변 매개변수를 함께 사용하려면 고정 매개변수 먼저, 그다음 *가변
# 고정 매개변수가 항상 먼저 와야 함

- 키워드 인수 : 함수 정의 시 인수에 이름을 붙여 호출 시 사용 함
# print 함수에서 sep, end 이런 거가 키워드 인수
# 아래는 *args, *kwargs 를 동시에 사용한 예

- 키워드 인수와 딕셔너리 언패킹
# 정의 >>> def 함수이름(키워드1, 키워드2...):
# 호출 >>> 함수(**딕셔너리)
# 딕셔너리의 키는 반드시 문자열 이어야 함
# 딕셔너리의 키 갯수와 함수 키워드 갯수가 같아야 함
# *한개만 붙이면 한번만 언패킹하여 '키' value가 사용 됨
- 키워드 인수를 사용하는 가변 인수 함수

# 정의 >>> def 함수이름(**매개변수):
# 보통 if 문으로 키가 kwargs에 있는지 확인하고 사용함
- 고정 매개변수, *args, *kwargs를 함께 사용하면 순서를 지켜야 한다.
- 매개변수에 초기 값 지정하기. 잘 안 바꾸는 매개변수에 값 할당
# print의 sep= ' '(공백) 이 해당됨
# def personal_info(name, age, address='비공개')
# personal_info('Jane', 20, 'SEL'), 이렇게 입력하면 변경됨
# 초기값 지정 매개 변수는 가장 뒤에 와야 함
'Programming > Python' 카테고리의 다른 글
[Python] Module (0) | 2022.10.19 |
---|---|
[Python] 파이썬 문자열 합치기 (0) | 2022.10.17 |
[Python] 변수의 상용 범위(Global) (0) | 2022.10.14 |
[Python] Dictionary 정리 (0) | 2022.10.14 |
[Python] Class 정리 (0) | 2022.10.14 |
댓글