| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
| 31 |
- html
- CSS
- 배열
- 문자열
- HashMap
- js
- Eclipse
- junit5
- list
- javascript
- math
- string
- Visual Studio Code
- SpringBoot
- input
- 테스트자동화
- 스프링부트
- Java
- IntelliJ
- ArrayList
- 단위테스트
- 인텔리제이
- java테스트
- junit
- 자바
- 자바문법
- vscode
- 자바스크립트
- 정규식
- Array
- Today
- Total
어제 오늘 내일
[Python 기초] 11. "남이 만든 바퀴를 가져다 쓰자!" 파이썬 모듈(import)과 pip 패키지 가이드 본문
[Python 기초] 11. "남이 만든 바퀴를 가져다 쓰자!" 파이썬 모듈(import)과 pip 패키지 가이드
hi.anna 2026. 4. 11. 08:00파이썬이 데이터 분석, 인공지능, 웹 개발 등 모든 분야를 휩쓸고 있는 가장 큰 이유는 바로 압도적인 생태계 때문입니다. 내가 상상하는 거의 모든 기능이 이미 누군가에 의해 만들어져서 무료로 배포되고 있습니다. 우리는 그저 '다운로드'하고 '가져다 쓰기'만 하면 됩니다.
오늘은 그 마법의 주문인 import와, 파이썬의 앱스토어 역할을 하는 pip에 대해 알아보겠습니다.
1. 모듈(Module)과 기본 주문: import
모듈이란 쉽게 말해 '잘 만들어진 파이썬 파일(.py)'입니다. 파일 하나에 유용한 함수와 변수들을 잔뜩 모아놓은 공구 상자라고 생각하시면 됩니다.
파이썬을 설치하면 기본적으로 제공되는 훌륭한 공구 상자들이 있습니다. 이를 표준 라이브러리(Standard Library)라고 부릅니다. 이 공구 상자를 열기 위해 사용하는 키워드가 바로 import입니다.
📌 예제 코드: 표준 라이브러리 활용하기 (math, datetime)
# 1. math 모듈 전체를 가져오기
import math
# math 상자 안에 있는 원주율(pi)과 올림(ceil) 함수 사용
print(math.pi) # 출력: 3.141592653589793
print(math.ceil(3.2)) # 출력: 4
print("-" * 20)
# 2. 모듈에서 특정 기능만 콕 집어서 가져오기 (from ~ import ~)
# "datetime 모듈 안에서 datetime이라는 기능만 가져올게!"
from datetime import datetime
# 지금 현재 시간 출력하기
now = datetime.now()
print(f"현재 시간: {now}")
print("-" * 20)
# 3. 모듈 이름이 너무 길면 별명(alias) 붙여주기 (import ~ as ~)
import random as rd
# random 대신 rd라는 짧은 이름으로 사용 가능
lucky_number = rd.randint(1, 45) # 1부터 45 사이의 무작위 정수 뽑기
print(f"행운의 번호: {lucky_number}")
💡 코드 설명:
import 모듈명: 모듈 전체를 가져옵니다. 사용할 때마다모듈명.함수이름()형태로 써야 합니다.from 모듈명 import 기능: 상자 전체를 가져오지 않고, 필요한 도구만 쏙 빼옵니다. 쓸 때 모듈 이름을 생략할 수 있어 편리합니다.import 모듈명 as 별명: 이름이 길 때 줄임말을 지정해 줍니다. 데이터 분석에서import pandas as pd형태로 아주 많이 쓰입니다.
2. 외부 패키지 다운로드: pip의 등장
파이썬이 기본으로 제공하는 도구 상자(표준 라이브러리)도 훌륭하지만, 인터넷 데이터를 수집하거나 엑셀 파일을 다루는 등 더 전문적인 작업을 하려면 전 세계 개발자들이 만든 외부 패키지를 다운로드해야 합니다.
이때 사용하는 것이 파이썬의 앱스토어인 PyPI (Python Package Index)와, 여기서 패키지를 다운받아 설치해 주는 매니저 프로그램인 pip입니다.
📌 터미널(명령 프롬프트)에서 패키지 설치하기
VS Code 하단의 터미널(Terminal) 창을 열고 아래와 같이 입력합니다. (파이썬 코드를 적는 곳이 아닙니다!)
# 인터넷 웹페이지의 데이터를 쉽게 가져오게 해주는 'requests' 패키지 설치
pip install requests
# 설치된 패키지 목록 확인하기
pip list
# 패키지 삭제하기 (필요 없어졌을 때)
pip uninstall requests
단 한 줄의 명령어로 복잡한 인터넷 통신 기능을 내 컴퓨터에 설치했습니다!
3. 다운받은 외부 패키지 사용해 보기
방금 설치한 requests 패키지를 이용해서, 실제로 인터넷에 있는 데이터를 내 파이썬 코드로 가져와 보겠습니다.
📌 예제 코드: requests 패키지로 웹 데이터 가져오기
# 방금 pip로 설치한 외부 패키지를 가져옵니다.
import requests
# 구글 메인 페이지에 접속(GET 요청)해서 응답을 받아옵니다.
response = requests.get("https://www.google.com")
# 접속이 성공적으로 되었는지 상태 코드(200이면 정상)를 확인합니다.
print(f"응답 코드: {response.status_code}")
if response.status_code == 200:
print("구글에 성공적으로 접속했습니다!")
else:
print("접속에 실패했습니다.")
만약 터미널에서 pip install requests를 하지 않고 위 코드를 실행했다면, 파이썬은 ModuleNotFoundError(그런 모듈 없는데요?)라는 에러를 뱉어냅니다. 외부 패키지는 반드시 먼저 설치해야 한다는 점을 잊지 마세요!
4. 실무 꿀팁: 내 컴퓨터의 환경을 팀원과 공유하기 (requirements.txt)
내가 만든 파이썬 프로그램을 다른 팀원에게 주거나, 서버에 올릴 때 문제가 하나 생깁니다.
"내가 내 컴퓨터에 어떤 패키지들을 pip install 했는지 어떻게 다 기억하지?"
이때 사용하는 것이 requirements.txt 파일입니다. 내 컴퓨터에 설치된 패키지 목록과 버전을 텍스트 파일로 쫙 뽑아주는 기능입니다.
터미널에 입력:
# 현재 설치된 패키지 목록을 requirements.txt 파일로 내보내기
pip freeze > requirements.txt
이제 이 텍스트 파일을 넘겨받은 다른 팀원은, 일일이 패키지를 설치할 필요 없이 아래 명령어 한 줄이면 나와 똑같은 개발 환경을 1분 만에 세팅할 수 있습니다.
터미널에 입력:
# 파일에 적힌 패키지들을 한 번에 싹 다 설치하기
pip install -r requirements.txt
📝 마치며
오늘의 핵심 요약입니다.
- 모듈과 `import`: 이미 만들어진 파이썬 코드를 내 코드로 불러와서 부품처럼 사용하는 방법.
- 표준 라이브러리: 파이썬을 깔면 기본적으로 제공되는 도구들 (
math,datetime,random등). pip: 파이썬의 앱스토어에서 외부 개발자가 만든 강력한 패키지(requests등)를 다운로드하는 마법의 명령어.
import와 pip를 알게 된 순간, 여러분의 파이썬 실력은 한계가 없어졌습니다. 이제 인터넷에 있는 수만 개의 도구들을 자유롭게 가져다 쓸 수 있게 되었으니까요.
하지만 남이 만든 도구를 잘 가져다 쓰려면, 그 도구가 어떻게 설계되었는지 이해하는 것도 중요합니다. 다음 포스팅에서는 초보자들이 가장 헷갈려 하지만 반드시 넘어야 할 산, "객체지향과 클래스(Class), 그리고 self의 정체"에 대해 아주 쉽게 풀어드리겠습니다.
도움이 되셨다면 좋아요와 댓글 부탁드립니다! 🐍
'IT > Python' 카테고리의 다른 글
| [Python 기초] 13. "데이터를 내 컴퓨터에 영구 저장하자!" 텍스트 파일과 CSV 읽고 쓰기 (open, with) (1) | 2026.04.12 |
|---|---|
| [Python 기초] 12. "객체지향이긴 한데..." 파이썬 클래스(Class)와 self의 정체 완벽 이해 (0) | 2026.04.12 |
| [Python 기초] 10. "똑같은 코드 또 쓰지 마세요!" 파이썬 함수(def)와 람다(Lambda) (1) | 2026.04.11 |
| [Python 기초] 9. "세 줄을 한 줄로 끝낸다!" 파이썬의 꽃, 리스트 컴프리헨션 (0) | 2026.04.10 |
| [Python 기초] 8. "100번의 단순 노동을 단 세 줄로!" 파이썬의 for-in 반복문 완벽 가이드 (0) | 2026.04.10 |
