티스토리 뷰

Python

Python 함수(Function) 정리

열코 2026. 5. 30. 07:29
반응형

Python 에서 함수(Function)는 특정 작업을 묶어서 재사용할 수 있도록 만든 코드 블록입니다.

함수를 사용하면:

  • 코드 재사용 가능
  • 유지보수 편리
  • 중복 코드 감소
  • 가독성 향상

등의 장점이 있습니다.


함수란?

예를 들어:

print("안녕하세요")
print("안녕하세요")
print("안녕하세요")

같은 코드를 반복 작성하는 대신 함수로 만들 수 있습니다.


함수 기본 구조

def 함수명():
    실행코드

함수 생성 예제

def hello():
    print("Hello Python")

함수 호출

함수는 생성만으로 실행되지 않습니다.

호출해야 실행됩니다.

hello()

결과:

Hello Python

매개변수(Parameter)

함수에 값을 전달할 수 있습니다.

def hello(name):
    print(name)

호출:

hello("홍길동")

결과:

홍길동

여러 개의 매개변수

def add(a, b):
    print(a + b)

호출:

add(10, 20)

결과:

30

return 문

함수 결과값 반환 시 사용.

def add(a, b):
    return a + b

호출:

result = add(10, 20)

print(result)

결과:

30

return 특징

return 실행 시 함수 종료.

def test():
    print("1")
    return
    print("2")

결과:

1

기본값 매개변수(Default Parameter)

기본값 설정 가능.

def hello(name="손님"):
    print(name)

호출:

hello()

결과:

손님

키워드 인자(Keyword Argument)

매개변수명을 직접 지정 가능.

def info(name, age):
    print(name, age)

info(age=30, name="홍길동")

결과:

홍길동 30

가변 인자(*args)

개수가 정해지지 않은 인자 처리.

def total(*numbers):
    print(numbers)

호출:

total(1, 2, 3, 4)

결과:

(1, 2, 3, 4)

kwargs(**kwargs)

키-값 형태 인자 처리.

def info(**data):
    print(data)

호출:

info(name="홍길동", age=30)

결과:

{'name': '홍길동', 'age': 30}

함수 안의 함수(Local Variable)

함수 내부 변수는 함수 안에서만 사용 가능.

def test():
    x = 10
    print(x)

전역 변수(Global Variable)

함수 밖에서 생성한 변수.

name = "Python"

def hello():
    print(name)

global 키워드

함수 내부에서 전역 변수 수정 시 사용.

count = 0

def increase():
    global count
    count += 1

increase()

print(count)

결과:

1

lambda 함수

한 줄 함수 작성 방식.

기본 구조:

lambda 매개변수: 결과값

lambda 예제

add = lambda a, b: a + b

print(add(10, 20))

결과:

30

재귀 함수(Recursive Function)

함수가 자기 자신 호출.

def count(num):
    if num == 0:
        return

    print(num)

    count(num - 1)

count(5)

결과:

5
4
3
2
1

함수 실전 예제

짝수 판별 함수

def is_even(num):
    if num % 2 == 0:
        return True

    return False

print(is_even(10))

결과:

True

계산기 함수

def calc(a, b):
    return a + b, a - b, a * b

result = calc(10, 5)

print(result)

결과:

(15, 5, 50)

문자열 출력 함수

def hello(name):
    print(f"안녕하세요 {name}님")

hello("홍길동")

함수 관련 주요 개념

def 함수 생성
return 결과 반환
Parameter 매개변수
Argument 전달값
*args 가변 위치 인자
**kwargs 가변 키워드 인자
lambda 익명 함수

자주 발생하는 오류

함수 호출 전 사용

hello()

def hello():
    print("test")

오류:

NameError

매개변수 개수 불일치

def add(a, b):
    print(a + b)

add(10)

오류:

TypeError

 

 

 

#Python
#Python함수
#PythonFunction
#파이썬함수
#PythonDef
#PythonReturn
#PythonLambda
#Python재귀함수
#Python기초
#Python문법

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함
반응형