파이썬에서 모듈과 라이브러리는 코드를 재사용하고, 기능을 확장하는 데 중요한 역할을 합니다. 모듈은 파이썬 파일(.py)로서 함수, 변수, 클래스를 정의할 수 있으며, 라이브러리는 여러 모듈을 모은 것으로, 특정 기능을 수행하는 코드 모음입니다.
1. 모듈과 라이브러리의 기본 개념
- 모듈(Module): 하나의 .py 파일로, 함수, 변수, 클래스 등을 포함하여 재사용 가능한 코드를 담고 있습니다.
- 라이브러리(Library): 여러 모듈을 포함한 코드 모음으로, 파이썬 표준 라이브러리와 외부 라이브러리가 있습니다.
파이썬에는 다양한 표준 라이브러리가 내장되어 있어 별도의 설치 없이 사용할 수 있으며, 외부 라이브러리는 pip 명령어를 통해 설치하여 사용할 수 있습니다.
2. 모듈 사용하기 (import)
모듈을 사용하기 위해서는 import 키워드를 사용하여 모듈을 불러와야 합니다.
# math 모듈을 불러오기
import math
print(math.sqrt(16)) # 결과: 4.0
설명: math 모듈을 불러와서 sqrt() 함수를 호출하여 16의 제곱근을 계산합니다.
🔹 특정 함수만 불러오기
모듈에서 특정 함수나 변수만 불러와 사용할 수 있습니다.
from math import pi, sqrt
print(pi) # 결과: 3.141592653589793
print(sqrt(25)) # 결과: 5.0
설명: math 모듈에서 pi와 sqrt만 불러와서 사용할 수 있습니다. 전체 모듈을 불러오는 것보다 메모리 효율이 좋습니다.
🔹 모듈에 별칭(alias) 붙이기
모듈 이름이 길거나 편리한 이름으로 사용하고 싶을 때 별칭을 붙일 수 있습니다.
import math as m
print(m.sqrt(16)) # 결과: 4.0
print(m.pi) # 결과: 3.141592653589793
설명: math 모듈을 m이라는 별칭으로 불러와서 사용할 수 있습니다.
3. 사용자 정의 모듈 만들기
자신만의 모듈을 만들어 사용할 수 있습니다. 예를 들어, my_module.py라는 파일에 함수를 정의하고, 다른 파일에서 이 모듈을 불러와 사용할 수 있습니다.
my_module.py
def add(a, b):
return a + b
def subtract(a, b):
return a - b
다른 파일에서 my_module 사용하기
import my_module
result = my_module.add(5, 3)
print(result) # 결과: 8
설명: my_module.py 파일에 정의된 add와 subtract 함수를 import를 통해 불러와 사용할 수 있습니다.
4. 패키지 사용하기
패키지는 여러 모듈을 폴더 구조로 정리한 것입니다. 각 폴더는 __init__.py 파일을 포함하여 패키지로 인식됩니다. 예를 들어, 다음과 같은 구조의 패키지를 만들 수 있습니다.
my_package/
__init__.py
module1.py
module2.py
- __init__.py는 패키지 초기화를 위해 사용됩니다. 비워두어도 무방합니다.
패키지 사용 예시
from my_package import module1, module2
result1 = module1.some_function()
result2 = module2.another_function()
설명: my_package라는 패키지 안에 있는 module1과 module2를 불러와서 사용할 수 있습니다. 패키지를 사용하면 코드를 구조화하고 재사용하기 쉬워집니다.
5. 파이썬 표준 라이브러리 사용하기
파이썬에는 유용한 표준 라이브러리가 포함되어 있어 별도의 설치 없이 사용할 수 있습니다.
🔹 datetime 모듈 (날짜와 시간)
import datetime
current_time = datetime.datetime.now()
print(current_time)
설명: datetime 모듈을 사용하여 현재 날짜와 시간을 가져옵니다.
🔹 random 모듈 (난수 생성)
import random
print(random.randint(1, 10)) # 1에서 10 사이의 난수 출력
설명: random.randint(1, 10)을 사용하여 1에서 10 사이의 임의의 정수를 생성합니다.
🔹 os 모듈 (운영 체제 인터페이스)
import os
print(os.getcwd()) # 현재 작업 디렉터리 경로 출력
설명: os 모듈은 파일과 디렉터리, 운영체제와 관련된 다양한 기능을 제공합니다. 예를 들어 os.getcwd()는 현재 작업 디렉터리를 반환합니다.
6. 외부 라이브러리 사용하기 (pip 설치)
외부 라이브러리는 파이썬 기본 라이브러리에 포함되지 않은 패키지로, pip를 사용해 설치할 수 있습니다. 예를 들어, requests 라이브러리를 설치하고 사용하는 방법은 다음과 같습니다.
🔹 pip를 사용해 requests 설치
pip install requests
설명: pip install requests 명령어를 실행하여 requests 라이브러리를 설치합니다. requests는 HTTP 요청을 보내는 데 자주 사용됩니다.
🔹 requests 사용 예시
import requests
response = requests.get("<https://api.github.com>")
print(response.status_code) # HTTP 상태 코드 출력
print(response.json()) # JSON 응답 출력
설명: requests.get()을 사용하여 https://api.github.com에 GET 요청을 보냅니다. status_code는 응답의 상태 코드, json()은 JSON 형식의 응답 데이터를 반환합니다.
7. pip로 설치된 외부 라이브러리 관리
- 설치된 라이브러리 목록 보기: pip list
- 특정 라이브러리 제거: pip uninstall <패키지 이름>
- 특정 라이브러리 업그레이드: pip install --upgrade <패키지 이름>
pip list # 설치된 패키지 목록 확인
pip uninstall requests # requests 패키지 제거
pip install --upgrade requests # requests 패키지 업그레이드
설명: pip list 명령어는 설치된 패키지 목록을 보여주고, pip uninstall은 특정 패키지를 제거합니다. pip install --upgrade는 패키지를 최신 버전으로 업그레이드합니다.
8. venv를 사용한 가상환경 관리
프로젝트마다 필요한 패키지가 다를 수 있으므로, 가상환경을 만들어 독립된 환경을 설정하는 것이 좋습니다. 가상환경은 프로젝트마다 패키지 버전을 관리하는 데 유용합니다.
🔹 가상환경 생성 및 활성화
# 가상환경 생성
python -m venv myenv
# (Windows) 가상환경 활성화
myenv\\\\Scripts\\\\activate
# (Mac/Linux) 가상환경 활성화
source myenv/bin/activate
설명: python -m venv myenv 명령어를 사용해 myenv라는 가상환경을 생성합니다. activate 명령어로 가상환경을 활성화합니다.
🔹 가상환경 비활성화
deactivate
설명: deactivate 명령어로 가상환경을 비활성화합니다.
모듈과 라이브러리, 가상환경을 사용하면 코드의 재사용성, 유지보수성, 확장성을 높일 수 있으며, 외부 라이브러리를 통해 다양한 기능을 쉽게 구현할 수 있습니다.
'파이썬 Python' 카테고리의 다른 글
파이썬 Python 패키지 관리자 (pip) (0) | 2024.11.18 |
---|---|
파이썬 Python 파일 입출력 (File I/O) 사용하기 (1) | 2024.11.13 |
파이썬 가상 환경 (Virtual Environments) 만들고 사용하는 방법 (0) | 2024.11.12 |
파이썬 리스트(List) 객체 사용 방법 (0) | 2024.11.12 |
파이썬(Python) 문자열 데이터 타입과 연산자 사용하기 (0) | 2024.11.10 |
Python 파이썬 for 문 사용하기 (1) | 2024.11.08 |
파이썬(Python) PyQt5 QVBoxLayout, QHBoxLayout 레이아웃 사용하기 (1) | 2024.10.26 |
파이썬 Python 숫자형 데이터 타입 (정수, 실수) (1) | 2024.10.25 |