십대를 위한 코딩/십대를 위한 파이썬

14. 함수(Function)의 정의, 구조, 그리고 호출 방식

forSilver 2025. 4. 4. 15:48
반응형

📘 Day 14. 함수(Function)의 정의, 구조, 그리고 호출 방식


1. 함수란?

  • 단위 기능을 수행하는 코드 블럭
  • 복잡한 문제를 기능 단위로 분해하여 작성
  • 중복 코드를 줄이고, 재사용성과 유지보수성을 높여줌

2. 함수 사용의 목적

목적 설명

중복 제거 동일한 기능 반복 구현 방지
유지 보수 코드 이해도와 수정 용이성 향상
논리 분할 복잡한 프로그램을 기능별로 나눔
재사용성 외부 모듈/라이브러리로도 활용 가능

3. 함수의 종류

분류 설명

내장 함수 파이썬에 기본 포함된 함수 (print(), len() 등)
3rd party 함수 외부 패키지 설치 후 사용 (예: numpy.mean())
사용자 정의 함수 직접 정의한 함수

4. 함수 정의 형식

def 함수이름([인수]):
    # 기능을 수행하는 코드
    [return 반환값]

예시 1: 인수도 없고 반환값도 없는 함수

def greet():
    print("안녕하세요!")

예시 2: 인수가 있고 반환값도 있는 함수

def add(x, y):
    return x + y

5. 함수 호출 형식

결과 = 함수이름(인수값)
  • 함수이름()만 호출해도 실행 가능
  • return값은 생략 가능하며, 없으면 None 반환
  • 여러 값을 return할 땐 tuple, list, dict 등으로 반환
def get_name_age():
    return "홍길동", 20  # tuple로 반환됨

name, age = get_name_age()

6. 함수의 구성 요소

요소 설명

def 함수 정의 키워드
함수명 식별 가능한 이름 (동사 형태 권장)
인수(파라미터) 함수 호출 시 전달되는 값
return 함수 실행 결과를 반환하는 키워드
들여쓰기 함수 내부 코드 작성 시 필수 (보통 4칸)

7. 특별한 키워드

키워드 설명

pass 아무 동작 없이 넘어갈 때 사용
None 반환값이 없음을 명시할 때 사용
__main__ 현재 실행 중인 파일의 이름 공간을 의미
if __name__ == '__main__':
    # 해당 파일이 직접 실행될 때만 실행됨
    print("이 파일은 메인 스크립트입니다.")

8. 사용자 정의 함수의 4가지 유형

인수 반환값 함수 예시

def hello(): print("hi")
def show(msg): print(msg)
def get_value(): return 5
def square(x): return x*x

9. 라이브러리와 패키지 이해

용어 설명

모듈(Module) .py 확장자의 파이썬 파일. 함수 모음 파일
라이브러리 모듈을 모아둔 형태
패키지 라이브러리를 설치할 수 있도록 구성한 파일
설치 도구 pip, conda 등 사용

주피터 노트북에서 외부 명령어 실행 시 !pip install 등 사용 가능


✅ 오늘의 정리

항목 설명

함수란? 하나의 기능을 담당하는 코드 집합
정의 방법 def 함수이름(매개변수):
호출 방법 함수이름(인수)
반환 return으로 반환값 지정 (생략 가능)
사용자 정의 함수 유형 인수/반환 여부에 따라 4가지
함수 이름 소문자, 동사형 권장

다음 차시에서는 함수 심화(가변 인자, 키워드 인자)모듈의 정의와 활용에 대해 학습합니다.
여러 파일로 코드를 나누어 체계적이고 재사용 가능한 파이썬 프로젝트를 만드는 기반이 됩니다.