Flask-WTForms и валидаторы

Сейчас мы напишем простенький функционал, дающий представление реализации работы форм, на примере страницы регистрации в нашем приложении. Углубиться же в своих познаниях лучше вооружившись документацией (ссылка будет) и тематическими статьями. Создадим каркас приложения. Приложение имеет единственный эндпойнт, который будет работать с POST-запросами. По идее, на странице domen.ru/registration юзера будет ждать форма с обязательными и необязательными … Читать далее

Flask. Маршрутизация.

Продолжаем изучать фреймворк Flask, и после того, как мы научились создавать простейшее приложение (статья тут), рассмотрим тему маршрутизации. Начнем со статичных маршрутов. Для привязки URL к функции во Flask используются маршруты (пути). Функции, которые отвечают на запрос по конкретному пути, называются функциями представления. А связывают URL с функцией с помощью декоратора route(). Выше пример создания … Читать далее

Flask. Быстрый старт с нуля.

Начнем статью не с воды, а сразу с запуска нашего первого приложения на фреймворке Flask. Для этого создадим новый проект в PyCharm, настроим виртуальное окружение (подробнее как это делать), активируем виртуальное окружение, и установим фреймворк с помощью команды в терминале: Если в нашем проекте еще нет файлов, то создадим его, например main.py, и напишем само … Читать далее

HTTP

Что за http в начале строки адреса страницы bednyakov.ru и других ресурсов? HTTP — это протокол, который договорились использовать разработчики браузеров, серверов, сайтов, мобильных приложений и обычных программ для обмена данными по сети. Благодаря этому у нас есть возможность использовать разные браузеры и открывать разные сайты, не задумываясь о том, подходят ли они друг другу. … Читать далее

Методы класса TestCase модуля Unittest. Автоматизированное тестирование в Python.

setUp Метод вызывается перед запуском каждого теста и позволяет избегать дублирования кода по созданию экземпляра тестируемого класса. Пример без setUp: Пример с setUp: Assert-методы Проверяют соответствие условию. Наиболее популярные: Метод Проверяет assertEqual(a, b) a == b assertNotEqual(a, b) a != b assertTrue(x) bool(x) is True assertFalse(x) bool(x) is False assertIs(a, b) a is b assertIsNot(a, b) a … Читать далее

Сортировка строки по длине, алфавиту и регистру

Задача из codewars: создайте функцию longer, которая принимает строку и сортирует содержащиеся в ней слова по их длине в порядке возрастания. Если есть два слова одинаковой длины, отсортируйте их по алфавиту. Для получения более подробной информации посмотрите примеры ниже. Предположим, что в качестве входных данных будут введены только алфавиты. Символы верхнего регистра имеют приоритет над символами нижнего регистра. То есть: … Читать далее

Виртуальные окружения

Если вы находитесь тут, но не знаете, зачем нужно виртуальное окружение — это странно. Рекомендую вооружиться гуглом и прочекать. В двух словах: для установки зависимостей (сторонних модулей и пакетов) непосредственно в проект, чтобы он был полностью независимым. Непосредственно в Python существует специальный модуль venv, который позволяет работать с виртуальным окружением. Основные команды: Операция \ ОС Windows … Читать далее

Основы навигации и управления файлами в LINUX из командной строки

pwd Вывод текущего каталога. ls Просмотр содержимого каталога. cd Перемещение по файловой системе. touch Создание файлов (touch file.py). mkdir Создание каталога (mkdir newcat). mv Перемещение файла в новое место (mv newcat/file.py) или переименование (mv newcat mycat) cp Копирование файлов и каталогов. rm Удаление файла. rmdir Удаление каталога (если он пуст, иначе rmdir -r) nano Редактирование … Читать далее

Основные команды PowerShell

Без знаний основ взаимодействия с оболочкой командной строки далеко не уехать. И раз вы здесь, вы это и так понимаете. Поэтому без лишней лирики сразу к делу! Командлет (псевдоним) Команда в *nix Команда в CMD.exe Описание Get-Location (pwd) pwd Выводит путь до текущего каталога Set-Location (cd) cd cd Меняет текущий каталог Get-ChildItem (ls) ls dir … Читать далее

List comprehension в Python

Это компактный способ создания списков с использованием одного выражения внутри квадратных скобок. Метод позволяет упростить создание списков путем применения выражения к каждому элементу последовательности (или другого итерируемого объекта) и добавления результата в новый список. Основной синтаксис list comprehension выглядит следующим образом: [выражение for элемент in итерируемый_объект if условие] Примеры: 1. Создание списка квадратов чисел:squares = … Читать далее