Найти в Дзене
Анастасия Софт

🐍 Как написать первое веб-приложение на Python (Flask / FastAPI) за один вечер

с живыми примерами, шутками и большим желанием сделать красиво Ты, вероятно, уже писал пару скриптов на Python. Возможно, парсил котиков с сайтов или считал зарплаты из Excel'я. А теперь хочешь перейти в веб, но боишься Django? Не бойся. Сегодня мы сделаем твое первое веб-приложение на Flask и FastAPI — быстро, с кайфом и даже с API-шкой. За один вечер. Серьёзно. Ты научишься: pip install flask from flask import Flask # Импортируем основной класс
app = Flask(__name__) # Создаём приложение
@app.route('/') # Указываем путь
def hello():
return 'Привет, мир!' # Возвращаем текст
if __name__ == '__main__':
app.run(debug=True) # Запускаем сервер с отладкой Открой http://localhost:5000 — и наслаждайся! Создаём папку templates, и в ней файл hello.html: <h1>Привет, {{ name }}!</h1> Код в Flask: from flask import render_template, request
@app.route('/hello/<name>')
def greet(name):
return render_template('hello.html', name=name) 👉 Зайди на http://localhost:5000/hello/Андрей
Оглавление

с живыми примерами, шутками и большим желанием сделать красиво

🚀 Введение

Ты, вероятно, уже писал пару скриптов на Python. Возможно, парсил котиков с сайтов или считал зарплаты из Excel'я. А теперь хочешь перейти в веб, но боишься Django? Не бойся. Сегодня мы сделаем твое первое веб-приложение на Flask и FastAPI — быстро, с кайфом и даже с API-шкой. За один вечер. Серьёзно.

🛠 Что мы будем делать?

Ты научишься:

  1. 📄 Создавать простые HTML-страницы
  2. ✉️ Принимать данные от пользователей (например, имя)
  3. 📬 Отправлять данные обратно (например, «Привет, Иван!»)
  4. 🔌 Создавать API с JSON'ом
  5. ✅ Добавлять валидацию и структуру данных
  6. 🐘 Развертывать это чудо на сервере

🔥 Урок 1. Flask: Сайт «Привет, мир»

Установка

pip install flask

Код (hello.py)

from flask import Flask # Импортируем основной класс

app = Flask(__name__) # Создаём приложение

@app.route('/') # Указываем путь
def hello():
return 'Привет, мир!' # Возвращаем текст

if __name__ == '__main__':
app.run(debug=True) # Запускаем сервер с отладкой

Что происходит:

  • @app.route('/') — говорит Flask'у: "Эй, когда зайдут на корень сайта — запускай hello()".
  • debug=True — автоматически перезапускает сервер, когда ты правишь код.

Открой http://localhost:5000 — и наслаждайся!

🧪 Урок 2. Передаём данные в HTML

Создаём папку templates, и в ней файл hello.html:

<h1>Привет, {{ name }}!</h1>

Код в Flask:

from flask import render_template, request

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

👉 Зайди на http://localhost:5000/hello/Андрей — и получи привет.

💬 Урок 3. Обработка формы

Форма HTML (templates/form.html):

<form action="/submit" method="post">
<input name="username" placeholder="Имя">
<button type="submit">Отправить</button>
</form>

Flask:

@app.route('/form')
def form():
return render_template('form.html')

@app.route('/submit', methods=['POST'])
def submit():
name = request.form['username']
return f'Привет, {name}!'

🎯 Здесь ты получаешь данные из формы через request.form.

🧠 Урок 4. API на FastAPI

FastAPI — это быстрый, современный фреймворк для создания API.

Установка:

pip install fastapi uvicorn

Простой API:

from fastapi import FastAPI

app = FastAPI()

@app.get('/')
def read_root():
return {"message": "Привет, API!"}

Запуск:

uvicorn filename:app --reload

Зайди на http://localhost:8000 и получи JSON.

🧑‍💻 Урок 5. Валидация и модели

FastAPI умеет валидировать данные через Pydantic:

from pydantic import BaseModel

class User(BaseModel):
name: str
age: int

@app.post('/user')
def create_user(user: User):
return {"message": f"Пользователь {user.name}, возраст {user.age}"}

Отправь JSON:

{
"name": "Анна",
"age": 28
}

🛠 Примеры задач

🧩 Новичок:

  1. Сделай страницу обратной связи
  2. Храни сообщения пользователей в словаре
  3. Покажи их на отдельной странице

💼 Продвинутый:

  1. Сделай API для создания/удаления задач (таск-трекер)
  2. Подключи SQLite или PostgreSQL и сохрани данные

🌐 Как это развернуть?

Хочешь похвастаться друзьям? Разверни:

  • Railway.app — просто загрузить GitHub-репозиторий
  • Render.com — подключи FastAPI с PostgreSQL
  • Deta.space / Heroku (если успел) — нажал кнопку и всё работает

😎 Итог

Ты:

✅ Научился писать простые сайты

✅ Сделал API

✅ Понял, как работают запросы и формы

✅ Подружился с Flask и FastAPI

✅ Готов к следующему шагу — базам данных, авторизации и деплою

Как написать первое веб-приложение на Python (Flask / FastAPI) за один вечер
Как написать первое веб-приложение на Python (Flask / FastAPI) за один вечер