Chapter 7. 함수

IT 지식 / Python·2026.08.25
PYTHON BASIC
Chapter 7. 함수
함수의 개념과 사용 방법을 배우고, 다양한 예제를 통해 이해합니다.


7.1 함수란?

함수(Function)는 특정 작업을 수행하는 코드의 묶음입니다. 프로그램에서 같은 코드를 여러 번 작성하는 대신 함수를 만들어 사용하면 코드가 간결해지고 유지보수가 쉬워집니다.

예를 들어, 다음과 같은 작업을 함수로 만들 수 있습니다:

  • 인사말 출력
  • 두 수의 합 계산
  • 회원 정보 출력

함수를 사용하는 이유는 다음과 같습니다:

  • 같은 코드를 여러 번 작성하지 않아도 됩니다.
  • 코드의 재사용이 가능합니다.
  • 프로그램의 구조를 이해하기 쉽습니다.
  • 유지보수가 편리합니다.
7.2 함수 만들기

함수는 def 키워드를 사용하여 만듭니다.

기본 문법은 다음과 같습니다:

기본 문법
def 함수이름():
    실행문

예제 1:

예제 1
def hello():
    print("안녕하세요.")

함수를 만들었다고 바로 실행되는 것은 아니며, 함수를 호출해야 실행됩니다.

함수 호출
hello()
실행 결과
안녕하세요.

여러 번 호출하기:

여러 번 호출하기
def hello():
    print("반갑습니다.")

hello()
hello()
hello()
실행 결과
반갑습니다.
반갑습니다.
반갑습니다.
7.3 매개변수(Parameter)

매개변수(Parameter)는 함수에 값을 전달하기 위한 변수입니다.

기본 문법은 다음과 같습니다:

기본 문법
def 함수이름(매개변수):
    실행문

예제 1:

예제 1
def hello(name):
    print(name + "님 반갑습니다.")

hello("홍길동")
hello("김철수")
실행 결과
홍길동님 반갑습니다.
김철수님 반갑습니다.

예제 2. 두 수의 합 출력:

예제 2
def add(a, b):
    print(a + b)

add(10, 20)
add(100, 300)
실행 결과
30
400

여러 개의 매개변수:

여러 개의 매개변수
def student(name, age, major):
    print("이름 :", name)
    print("나이 :", age)
    print("학과 :", major)

student("홍길동", 20, "컴퓨터공학")
실행 결과
이름 : 홍길동
나이 : 20
학과 : 컴퓨터공학

기본값(Default Parameter):

기본값 지정
def hello(name="손님"):
    print(name + "님 환영합니다.")

hello()
hello("홍길동")
실행 결과
손님님 환영합니다.
홍길동님 환영합니다.
7.4 반환값(Return)

함수는 작업 결과를 돌려줄 수 있습니다. 이때 사용하는 키워드가 return입니다.

기본 문법은 다음과 같습니다:

기본 문법
def 함수이름():
    return 값

예제 1:

예제 1
def add(a, b):
    return a + b

result = add(10, 20)

print(result)
실행 결과
30

예제 2:

예제 2
def square(num):
    return num * num

print(square(5))
실행 결과
25

문자열 반환:

문자열 반환
def message():
    return "파이썬 공부"

print(message())
실행 결과
파이썬 공부

여러 개의 값 반환:

여러 개의 값 반환
def calc(a, b):
    return a + b, a - b

x, y = calc(20, 10)

print(x)
print(y)
실행 결과
30
10

return의 역할:

return의 역할
def test():
    print("첫 번째")
    return
    print("두 번째")

test()
실행 결과
첫 번째
7.5 변수의 범위(Scope)

함수 안에서 만든 변수는 함수 안에서만 사용할 수 있습니다.

변수의 범위
def test():
    num = 100
    print(num)

test()
실행 결과
100

함수 밖에서는 사용할 수 없으며, 다음과 같이 실행하면 오류가 발생합니다:

오류 발생 예
print(num)

전역 변수(Global Variable):

전역 변수 사용 예
name = "홍길동"

def hello():
    print(name)

hello()
실행 결과
홍길동
7.6 람다(Lambda)

람다(Lambda)는 이름이 없는 간단한 함수입니다. 간단한 계산을 할 때 많이 사용됩니다.

기본 문법은 다음과 같습니다:

기본 문법
lambda 매개변수 : 반환값

예제 1:

예제 1
add = lambda a, b: a + b

print(add(10, 20))
실행 결과
30

일반 함수와 비교:

일반 함수
def square(x):
    return x * x

print(square(5))
실행 결과
25

람다 함수:

람다 함수
square = lambda x: x * x

print(square(5))
실행 결과
25

map()과 람다:

map()과 람다
numbers = [1, 2, 3, 4, 5]

result = list(map(lambda x: x * 2, numbers))

print(result)
실행 결과
[2, 4, 6, 8, 10]

filter()와 람다:

filter()과 람다
numbers = [1, 2, 3, 4, 5, 6]

result = list(filter(lambda x: x % 2 == 0, numbers))

print(result)
실행 결과
[2, 4, 6]
7.7 복합 예제
복합 예제
def average(a, b, c):
    return (a + b + c) / 3

score = average(90, 80, 100)

print("평균 :", score)
실행 결과
평균 : 90.0
📌 Chapter 7 핵심 정리
  • 함수는 특정 작업을 수행하는 코드의 묶음이다.
  • 함수를 사용하면 코드의 재사용이 가능하고 유지보수가 용이하다.
  • 함수는 def 키워드를 사용하여 정의한다.
  • 매개변수를 통해 함수에 값을 전달할 수 있다.
  • 함수는 return 키워드를 사용하여 값을 반환할 수 있다.
  • 전역 변수는 함수 안에서도 사용할 수 있다.
  • 람다 함수는 간단한 함수를 정의할 때 사용된다.

프로그램·홈페이지·강의가 필요하신가요?

프로그램 판매, 무료 다운로드, 홈페이지 제작, IT 강의 상담을 도와드립니다.

상담 신청하기