반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/12   »
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
Archives
Today
Total
관리 메뉴

Learner's Log님의 블로그

1. 플라스크(Flask) 개요 및 기본 작성법 본문

flask

1. 플라스크(Flask) 개요 및 기본 작성법

Learner's Log 2025. 2. 3. 11:22

Flask란?
파이썬 기반의 마이크로 웹 프레임워크로, 가볍고 확장성이 뛰어나 빠른 웹 개발이 가능하다.
Django처럼 모든 기능이 포함된 것이 아니라 필요한 기능을 확장하여 사용할 수 있는 점이 특징이다.


 플라스크 기본 작성법

플라스크를 설치하고 간단한 웹 애플리케이션을 만들어보자!

1️⃣ 플라스크 설치

먼저, 플라스크를 설치해야 한다.

pip install flask

2️⃣ 플라스크 기본 코드

간단한 "Hello, Flask!" 페이지 만들기

from flask import Flask

app = Flask(__name__)  # 플라스크 애플리케이션 객체 생성

@app.route("/")  # 루트 경로("/")에 대한 요청을 처리하는 함수
def home():
    return "Hello, Flask!"

if __name__ == "__main__":
    app.run(debug=True)  # 디버그 모드 실행
 

코드 설명

  • Flask(__name__) : 현재 실행 중인 모듈을 기반으로 플라스크 애플리케이션 객체 생성
  • @app.route("/") : 특정 URL(여기서는 /)이 요청될 때 실행할 함수 정의
  • app.run(debug=True) : 디버그 모드를 활성화하여 실행

플라스크 실행하기

  1. 위 코드를 app.py로 저장
  2. 터미널에서 실행  
python app.py
   3. http://127.0.0.1:5000/  에 접속하면 Hello, Flask!가 출력됨

 


플라스크에서 HTML 파일 사용하기

보통 웹페이지는 HTML 파일을 사용해야 한다. 이를 위해 템플릿(Templates) 폴더를 만들고 render_template()을 활용한다.

1️⃣ 프로젝트 구조

/flask_app
│── app.py
└── templates
    └── index.html

2️⃣ index.html 파일 작성

templates/index.html

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>Flask 홈페이지</title>
</head>
<body>
    <h1>안녕하세요! 플라스크 웹 페이지입니다.</h1>
</body>
</html>

Flask에서 HTML 파일 불러오기

📌 app.py 수정

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def home():
    return render_template("index.html")  # HTML 파일 렌더링

if __name__ == "__main__":
    app.run(debug=True)
 

이제 다시 실행하면 http://127.0.0.1:5000/에서 HTML 페이지가 보일 것이다.


🛠 라우트, 동적 데이터 전달

Flask는 단순한 페이지뿐만 아니라 동적 데이터 처리도 가능하다.

URL 매개변수 받기

@app.route("/user/<name>")
def user(name):
    return f"안녕하세요, {name}님!"
  • /user/IT → "안녕하세요, IT님!"

HTML에 데이터 전달

 app.py

@app.route("/hello/<name>")
def hello(name):
    return render_template("hello.html", username=name)

 

templates/hello.html

<h1>안녕하세요, {{ username }}님!</h1>
  • /hello/블로그 → "안녕하세요, 블로그!"

마무리

플라스크는 가볍고 배우기 쉽지만 강력한 기능을 제공하는 웹 프레임워크다.
오늘 배운 내용으로간단한 웹 페이지를 만들고, 추가로 데이터베이스 연결, REST API 개발 등도 시도해보면 좋겠다.

반응형