본문 바로가기
파이썬(Python)

파이썬(Python) 함수와 모듈 완벽 가이드 (초보자용)

by 정보오리 2025. 2. 10.

"코드를 반복하지 않고 깔끔하게 정리하는 방법을 배워보자!"

프로그래밍을 하다 보면 같은 코드를 여러 번 반복해서 사용해야 하는 경우가 많다.
이때 함수(Function)와 모듈(Module)을 사용하면 코드가 더 효율적이 된다.

오늘은 파이썬 함수와 모듈에 대해 초보자도 쉽게 이해할 수 있도록 하나씩 설명하겠다. 🚀

 


📌 1. 함수(Function)란?

함수는 특정 작업을 수행하는 코드 블록이다.
한 번 만들어두면 여러 번 호출하여 사용할 수 있어 코드 재사용성이 높아진다.

✅ 1.1 함수 정의와 호출

파이썬에서 함수를 만들려면 def 키워드를 사용한다.
그리고 필요한 곳에서 함수를 호출하여 실행할 수 있다.

🔹 함수 정의 (만들기)

def 인사():  
    print("안녕하세요! 파이썬을 배워봅시다.")

🔹 함수 호출 (사용하기)

인사()  # 함수 실행

📌 출력 결과

안녕하세요! 파이썬을 배워봅시다.

💡 Tip: 함수를 만들 때 def 함수이름(): 형식으로 정의한다.


✅ 1.2 함수에 매개변수 (입력값) 전달하기

함수에 입력값(매개변수, Parameter) 을 넣으면 더 유용하게 사용할 수 있다.

🔹 매개변수 사용 예제

def 인사(이름):
    print(f"안녕하세요, {이름}님!")

인사("철수")  # "철수"를 함수에 전달

📌 출력 결과

안녕하세요, 철수님!

🔹 여러 개의 매개변수 사용

def 더하기(a, b):
    print(f"두 수의 합: {a + b}")

더하기(3, 7)

📌 출력 결과

두 수의 합: 10

💡 Tip: 매개변수를 여러 개 사용할 수도 있다.


✅ 1.3 함수에서 값 반환하기 (return)

함수는 실행 후 결과를 반환(return) 할 수도 있다.

🔹 return 문 사용 예제

def 제곱(x):
    return x ** 2  # x의 제곱을 반환

결과 = 제곱(4)
print(결과)

📌 출력 결과

16

💡 Tip: return을 사용하면 함수 실행 결과를 변수에 저장할 수도 있다.

 

 


📌 2. 모듈(Module)과 패키지(Package)란?

✅ 2.1 모듈(Module)이란?

모듈(Module)은 여러 함수를 모아놓은 파이썬 파일이다.
한 파일에서 만든 함수를 다른 파일에서도 사용할 수 있도록 도와준다.

🔹 모듈 만들기

# my_module.py 파일 생성
def 인사():
    print("안녕하세요! 모듈을 배워봅시다.")

def 더하기(a, b):
    return a + b

🔹 모듈 불러오기

다른 파이썬 파일에서 import 키워드를 사용하여 모듈을 가져올 수 있다.

import my_module  # 모듈 불러오기

my_module.인사()  # 모듈 안의 함수 호출
print(my_module.더하기(3, 5))

📌 출력 결과

안녕하세요! 모듈을 배워봅시다.
8

💡 Tip: 같은 폴더에 있는 .py 파일을 모듈로 불러올 수 있다.


✅ 2.2 모듈에서 특정 함수만 가져오기

모듈에서 특정 함수만 사용할 수도 있다.

🔹 특정 함수만 가져오기

from my_module import 인사

인사()  # 모듈 이름 없이 함수 사용 가능

💡 Tip: from 모듈이름 import 함수이름 형식을 사용하면 모듈 이름 없이 바로 함수를 호출할 수 있다.


✅ 2.3 파이썬 내장 모듈 사용하기

파이썬에는 기본적으로 제공되는 내장 모듈이 많다.
대표적으로 math, random, datetime 등이 있다.

🔹 math 모듈 사용 예제

import math

print(math.sqrt(16))  # 16의 제곱근
print(math.pi)  # 원주율 (π)

📌 출력 결과

4.0
3.141592653589793

🔹 random 모듈 사용 예제

import random

print(random.randint(1, 10))  # 1~10 사이 랜덤 숫자 생성

📌 출력 결과 (랜덤값)

5

💡 Tip: random.randint(시작, 끝)을 사용하면 특정 범위의 난수를 생성할 수 있다.


✅ 2.4 패키지(Package)란?

패키지는 여러 개의 모듈을 포함하는 폴더이다.
여러 모듈을 체계적으로 정리할 때 유용하다.

🔹 패키지 구조 예시

mypackage/         ← 패키지 폴더
 ├── __init__.py   ← 패키지 초기화 파일
 ├── module1.py    ← 모듈 파일 1
 ├── module2.py    ← 모듈 파일 2

🔹 패키지 사용법

from mypackage import module1

module1.인사()

💡 Tip: 패키지를 사용하면 여러 개의 모듈을 효율적으로 관리할 수 있다.


✅ 3. 함수와 모듈 요약

함수 특정 작업을 수행하는 코드 블록 def 함수이름():
매개변수 함수에 입력값을 전달 def 함수(이름):
return 함수 결과 반환 return 값
모듈 여러 함수를 저장한 파일 import my_module
특정 함수 가져오기 모듈에서 특정 함수만 사용 from 모듈 import 함수
내장 모듈 파이썬 기본 제공 기능 import math
패키지 여러 모듈을 모아둔 폴더 from 패키지 import 모듈

 


🎯 마무리

함수와 모듈을 사용하면 코드를 효율적으로 관리할 수 있다.

  • 함수는 코드 재사용성을 높여 가독성을 개선한다.
  • 모듈과 패키지를 사용하면 여러 파일로 나누어 유지보수가 쉬워진다.