본문 바로가기
Programming/Python

[Python] 함수 정리

by skyrun 2022. 10. 14.

- 결과값을 반환하는 것을 함수로, 결과값을 반환하지 않는 것을 프로시저로 구분함

- 클래스에 속하면 메서드, 그냥이면 함수

- 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

댓글