Python 초보자를 위한 필수 라이브러리 10가지

Python 초보자를 위한 필수 라이브러리 10가지

Python 생태계에는 데이터 처리, 웹 크롤링, 시각화 등 분야별로 수많은 라이브러리가 있습니다.
이 중 초보자가 알아두면 프로젝트 시작과 학습에 큰 도움이 되는 10가지를 선정했습니다.
각 라이브러리별 소개, 설치 방법, 간단한 코드 스니펫과 예상 결과 화면을 함께 살펴보세요.


라이브러리 한눈에 보기

카테고리 라이브러리
데이터 처리 NumPy, pandas
웹 크롤링 requests, BeautifulSoup, Selenium
시각화 matplotlib, seaborn, plotly
기타 SQLAlchemy, Flask

1. NumPy (Numerical Python)

데이터 과학의 기초가 되는 수치 연산 라이브러리입니다. 고성능 다차원 배열 객체 ndarray와 브로드캐스팅, 선형대수, 난수 생성 기능을 제공합니다.

pip install numpy
import numpy as np

# 1차원 배열 생성 및 연산
arr = np.array([1, 2, 3])
print(arr * 2)

# 2차원 행렬 덧셈
m1 = np.array([[1, 2], [3, 4]])
m2 = np.ones((2,2))
print(m1 + m2)

결과 화면 (콘솔)

[2 4 6]
[[2. 3.]
 [4. 5.]]

2. pandas

테이블 형태의 데이터를 다루는 핵심 라이브러리입니다. DataFrame과 Series 객체로 CSV/엑셀 파일, SQL 쿼리 결과 등을 손쉽게 읽고 쓰며, 그룹화·정렬·결측치 처리 등 데이터 전처리를 편리하게 지원합니다.

pip install pandas
import pandas as pd

# 딕셔너리로부터 DataFrame 생성
df = pd.DataFrame({
    '이름': ['Alice', 'Bob', 'Charlie'],
    '나이': [25, 30, 35]
})
print(df)

# CSV 파일로 저장
df.to_csv('people.csv', index=False)

결과 화면 (콘솔)

이름 나이
0 Alice 25
1 Bob 30
2 Charlie 35

3. requests

HTTP 요청을 간편하게 처리하는 라이브러리입니다. REST API 호출, 로그인 폼 제출, 파일 다운로드 등 웹 상호작용을 코드 몇 줄로 구현할 수 있습니다.

pip install requests
import requests

# GitHub API 호출
r = requests.get('https://api.github.com')
print(r.status_code)
data = r.json()
print(data['current_user_url'])

결과 화면 (콘솔)

200
https://api.github.com/user

4. BeautifulSoup

HTML/XML 문서에서 원하는 요소를 추출하는 웹 스크래핑 도구입니다. requests와 함께 사용해 텍스트, 링크, 이미지 URL 등을 손쉽게 파싱할 수 있습니다.

pip install beautifulsoup4
from bs4 import BeautifulSoup

html = '<html><body><h1>안녕하세요</h1><p>Python</p></body></html>'
soup = BeautifulSoup(html, 'html.parser')
print(soup.h1.text)
print(soup.p.string)

결과 화면 (콘솔)

안녕하세요
Python

5. Selenium

브라우저를 자동화해 동적 페이지를 제어할 때 사용하는 도구입니다. 로그인, 버튼 클릭, 스크롤, 파일 업로드 등 JavaScript 로드 후 변하는 요소도 제어할 수 있습니다.

pip install selenium
# ChromeDriver 별도 다운로드 필요
from selenium import webdriver

driver = webdriver.Chrome('/path/to/chromedriver')
driver.get('https://example.com')
print(driver.title)
driver.quit()

결과 화면 (콘솔)

Example Domain

6. matplotlib

가장 기본이 되는 2D 시각화 라이브러리입니다. 선 그래프, 막대 그래프, 히스토그램, 산점도 등 다양한 차트를 그릴 수 있으며, 세부 설정도 세밀하게 조절 가능합니다.

pip install matplotlib
import matplotlib.pyplot as plt

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y, marker='o')
plt.title('예제 선 그래프')
plt.xlabel('X축')
plt.ylabel('Y축')
plt.show()

결과 화면

(선 그래프가 그려진 윈도우 창이 표시됩니다)


7. seaborn

matplotlib 기반의 통계적 시각화 라이브러리입니다. 데이터셋에 내장된 DataFrame을 바로 입력해도 동작하며, 복잡한 스타일링과 색상 테마를 간단히 적용할 수 있습니다.

pip install seaborn
import seaborn as sns
import pandas as pd

df = pd.DataFrame({
    'group': ['A','A','B','B'],
    'value': [10,15,20,25]
})
sns.barplot(x='group', y='value', data=df)

결과 화면

(그룹별 막대 그래프가 그려진 이미지 창)


8. plotly

대화형(interactive) 차트를 웹 브라우저에서 표현할 수 있는 라이브러리입니다. 마우스 오버 툴팁, 줌·팬 기능을 기본 제공하며, 대시보드와 결합하기 좋습니다.

pip install plotly
import plotly.express as px

df = px.data.iris()
fig = px.scatter(df, x='sepal_width', y='sepal_length', color='species')
fig.show()

결과 화면

(브라우저에 산점도가 대화형으로 표시됩니다)


9. SQLAlchemy

Python에서 SQL 데이터베이스를 객체 지향적으로 다루는 ORM(Object-Relational Mapping) 라이브러리입니다. 복잡한 쿼리도 파이썬 코드로 작성할 수 있어 생산성 향상에 도움이 됩니다.

pip install sqlalchemy
from sqlalchemy import create_engine, MetaData, Table, Column, Integer, String

engine = create_engine('sqlite:///:memory:')
metadata = MetaData()
user = Table('user', metadata,
    Column('id', Integer, primary_key=True),
    Column('name', String)
)
metadata.create_all(engine)
print(engine.table_names())

결과 화면 (콘솔)

['user']

10. Flask

가볍고 직관적인 웹 프레임워크입니다. API 서버, 간단한 웹 서비스, 마이크로서비스 등 빠르게 프로토타입을 만들 때 유용합니다.

pip install flask
from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello, World!'

if __name__ == '__main__':
    app.run(port=5000)

결과 화면 (브라우저)

Hello, World!

추가 팁과 다음에 알아볼 만한 것들

  • 가상환경(venv, conda) 관리로 라이브러리 충돌 방지
  • pip freeze > requirements.txt 로 프로젝트 의존성 기록
  • VSCode, Jupyter Notebook 등을 활용한 실시간 코드 실행
  • 데이터 저장·시각화 심화: openpyxlxlrdfoliumdash
  • 머신러닝/딥러닝에 관심 있다면 scikit-learnTensorFlowPyTorch도 도전해 보세요!

댓글 남기기