Реализовывали ли вы собственный проект на Python?

Ответ

Да. Например, разрабатывал REST API на Flask для управления задачами (To-Do).

Ключевые технологии:

  • Flask — веб-фреймворк.
  • SQLAlchemy — ORM для работы с базой данных.
  • Flask-JWT-Extended — для аутентификации по JWT-токенам.

Пример реализации эндпоинта для создания задачи:

from flask import request, jsonify
from flask_jwt_extended import jwt_required, get_jwt_identity

@app.route('/api/tasks', methods=['POST'])
@jwt_required()
def create_task():
    """Создает новую задачу для аутентифицированного пользователя."""
    current_user_id = get_jwt_identity()
    data = request.get_json()

    # Валидация входных данных
    if not data or 'title' not in data:
        return jsonify({'error': 'Title is required'}), 400

    # Создание и сохранение задачи
    new_task = Task(
        title=data['title'],
        description=data.get('description', ''),
        user_id=current_user_id
    )
    db.session.add(new_task)
    db.session.commit()

    return jsonify({'id': new_task.id, 'title': new_task.title}), 201

Также использовал Python для:

  • Скриптов автоматизации (парсинг веб-страниц, обработка CSV/Excel файлов).
  • Анализа данных и ML-экспериментов с использованием библиотек pandas, numpy и scikit-learn.

Ответ 18+ 🔞

А, ну вот, к примеру, делал я как-то REST API на Flask для управления всякими задачами, типа To-Do лист, понимаешь? Чтобы можно было туда-сюда запихивать свои дела.

Что под капотом было, блядь:

  • Flask — ну, фреймворк такой, вебовый.
  • SQLAlchemy — эта штука, чтобы с базой данных не на чистом SQL общаться, а через объекты, удобнее.
  • Flask-JWT-Extended — чтобы пользователей по токенам узнавать, а не по сессиям старым.

Вот, смотри, как примерно выглядел эндпоинт, чтобы новую задачу создать:

from flask import request, jsonify
from flask_jwt_extended import jwt_required, get_jwt_identity

@app.route('/api/tasks', methods=['POST'])
@jwt_required()
def create_task():
    """Создает новую задачу для аутентифицированного пользователя."""
    current_user_id = get_jwt_identity()
    data = request.get_json()

    # Валидация входных данных
    if not data or 'title' not in data:
        return jsonify({'error': 'Title is required'}), 400

    # Создание и сохранение задачи
    new_task = Task(
        title=data['title'],
        description=data.get('description', ''),
        user_id=current_user_id
    )
    db.session.add(new_task)
    db.session.commit()

    return jsonify({'id': new_task.id, 'title': new_task.title}), 201

Ну и вообще, Python — это ж, ёпта, универсальный такой швейцарский нож! Ещё на нём скрипты для автоматизации всякой хуйни писал: то сайты парсить, то файлы Excel перелопачивать. А однажды даже в анализ данных и машинное обучение полез, с pandas и scikit-learn — там, конечно, овердохуища формул, но зато интересно, блядь.