함수란?
입력을 받아 원하는 처리를 한 후 출력을 내보내는 일련의 작업을 수행하는 코드 블록
프로그램 내에서 특정한 기능을 수행하기 위해,
코드를 논리적으로 그룹화하여 재사용 가능한 형태로 정의
함수의 필요성
함수의 정의와 호출 방법
+)def
키워드를 사용해 함수 정의
+) 함수 이름 뒤 소괄호()
안에 매개변수(입력 값)을 정의
+) 함수 내부에서 필요한 작업 수행 후,return
을 사용해 결과값 반환
+) 함수를 호출할 때는 함수 이름을 적고,
소괄호 안에 인수(함수에 전달할 값)를 넣어 호출
+) 필요에 따라 결과를 변수에 저장 가능
간단한 계산의 함수 만들기
다양한 함수 예시
전역변수? 지역변수?
전역변수 (Global Variables)
전역변수는 프로그램 전체에서 접근 가능한 변수, 어디서든지 사용 가능
프로그램이 시작될 때 생성, 프로그램이 종료될 때까지 메모리에 유지
지역변수 (Local Variables)
지역변수는 특정한 범위(ex:함수 내부)에서만 접근 가능한 변수, 범위 밖 사용 불가
해당 범위에서 생성, 범위를 벗어나면 메모리에서 사라짐
예시)
인수? 매개변수?
인수 (Argument)
함수를 호출할 때 전달되는 값
함수를 호출할 때 전달되는 실제 값이며, 함수를 호출할 때마다 다를 수 있다.
함수 호출 시 매개변수에 전달되는 값으로, 해당 값은 함수 내부에서 매개변수로 사용됨
매개변수 (Parameter)
함수를 정의할 때 함수가 받아들이는 값을 지정하는 변수
함수의 헤더 부분에서 매개변수가 정의, 함수 내부에서 사용
함수를 정의할 때 매개변수를 정의하고, 함수가 호출될 때 매개변수에 해당하는 값을 전달받음
정리: 함수를 정의할 때 매개변수
, 함수를 호출할 때 전달되는 값 인수
예시)
greet
함수의 매개변수: name
함수 호출 시 "Alice"
라는 값이 name
매개변수! 로 전달
여기서 "Alice"
가 인수!
위치 인수? 키워드 인수?
함수 호출 시 전달되는 인자는 두 가지 유형이 있음
위치 인수와 키워드 인수
위치 인수 (Positional Arguments)
함수 정의에서 매개변수의 위치에 따라 전달되는 인수
위치 전달인수는 인자의 값이 함수의 매개변수에 순서대로 매핑됨
함수 호출 시 위치 전달인수는 매개변수의 위치에 따라 전달
키워드 인수 (Keyword Arguments)
함수를 호출할 때, 인수를 순서대로 전달하는 대신 특정 매개변수에 값을 할당해 전달 가능
기본값(Default Values) 설정
키워드 인수와 기본값 함께 사용
가변 인수(Variable-length Arguments) 활용
args
와 kwargs
를 사용args
: 함수를 호출할 때 임의 개수의 위치 인수를 전달kwargs
: 함수를 호출할 때 임의 개수의 키워드 인수를 전달args
예시kwargs
예시함수가 데이터 분석에서 사용되는 예시
데이터 전처리 함수
예로, 데이터 정규화, 결측치 처리, 특성 스케일링 등
데이터 시각화 함수
데이터의 분포, 상관 관계, 이상치 등
통계 계산 함수