👍 Библиотека jsonschema для валидации данных в формате JSON
Позволяет проверять, соответствуют ли данные JSON Schema. Также предоставляет возможность отложенной (ленивой) валидации, для идентификации всех ошибок валидации по мере их возникновения.
Установка — pip install jsonschema
🔗Страница библиотеки на PyPI
Позволяет проверять, соответствуют ли данные JSON Schema. Также предоставляет возможность отложенной (ленивой) валидации, для идентификации всех ошибок валидации по мере их возникновения.
Установка — pip install jsonschema
🔗Страница библиотеки на PyPI
👍15❤3
👤Аутентификация, авторизация пользователей и единый вход (SSO) с использованием Django
Автор новой статьи на Хабре подробно рассказывает о реализации технологии Единого Входа (SSO — Single Sign-On). Она даёт возможность пользователям получать доступ к разным системам без повторного ввода логина и пароля.
Чтобы интегрировать приложение на Django с SSO, следует сначала разобраться с механизмами аутентификации и авторизации пользователей. Более подробно об этом всём читайте здесь 👈
Автор новой статьи на Хабре подробно рассказывает о реализации технологии Единого Входа (SSO — Single Sign-On). Она даёт возможность пользователям получать доступ к разным системам без повторного ввода логина и пароля.
Чтобы интегрировать приложение на Django с SSO, следует сначала разобраться с механизмами аутентификации и авторизации пользователей. Более подробно об этом всём читайте здесь 👈
👍17🔥4
😺 PikaPython — ультралёгкий интерпретатор Python
Для запуска требует всего 4 KB RAM. Готов к использованию «из коробки» без каких-либо дополнительных настроек. Легко расширяется с помощью C.
PikaPython похож на проект MicroPython, который также ориентирован на работу в условиях ограниченных ресурсов. Это делает интерпретатор подходящим для встроенных систем, устройств IoT и микроконтроллеров.
🧑💻 Репозиторий с подробными инструкциями и примерами
Для запуска требует всего 4 KB RAM. Готов к использованию «из коробки» без каких-либо дополнительных настроек. Легко расширяется с помощью C.
PikaPython похож на проект MicroPython, который также ориентирован на работу в условиях ограниченных ресурсов. Это делает интерпретатор подходящим для встроенных систем, устройств IoT и микроконтроллеров.
🧑💻 Репозиторий с подробными инструкциями и примерами
👏11👍8
🐍➰ Создаем игру «Виселица» на Python. Часть 2. Графический интерфейс на PySimpleGUI
В первой части мы написали код для получения и обработки вводимых игроком данных, создали некоторые компоненты и текстовый пользовательский интерфейс (TUI). Во второй части реализуем логику игры «Виселица» и создадим графический интерфейс с помощью PySimpleGUI.
🔗 Читать статью
В первой части мы написали код для получения и обработки вводимых игроком данных, создали некоторые компоненты и текстовый пользовательский интерфейс (TUI). Во второй части реализуем логику игры «Виселица» и создадим графический интерфейс с помощью PySimpleGUI.
🔗 Читать статью
🥰10⚡3❤3
🐍💬 Как часто вы используете ключевое слово del в Python?
Так написал один из пользователей Reddit. Что бы вы ответили?
❤️ — я действительно использую del
🤔 — да зачем это вообще нужно?
#интерактив
Я пишу код на Python уже многие годы, в основном бэкенд для веб-приложений, но почти никогда не использовал del. Есть у кого-нибудь интересные или убедительные примеры использования этой команды?
Так написал один из пользователей Reddit. Что бы вы ответили?
❤️ — я действительно использую del
🤔 — да зачем это вообще нужно?
#интерактив
🤔78❤37🌚7
🧑💻 Granian — HTTP-сервер, написанный на языке программирования Rust
Предназначен для использования в Python-приложениях. Преимущества Granian:
✔️Имеет единственную, правильную реализацию HTTP, поддерживающую версии 1, 2 (и в конечном итоге 3).
✔️Избегает обычной композиции зависимостей Gunicorn + uvicorn + http-tools на Unix-системах.
✔️Обеспечивает стабильную производительность по сравнению с существующими альтернативами.
Granian поддерживает ASGI/3, RSGI и WSGI, HTTPS, веб-сокеты.
Установка — pip install granian
🔗 Репозиторий проекта на GitHub
Предназначен для использования в Python-приложениях. Преимущества Granian:
✔️Имеет единственную, правильную реализацию HTTP, поддерживающую версии 1, 2 (и в конечном итоге 3).
✔️Избегает обычной композиции зависимостей Gunicorn + uvicorn + http-tools на Unix-системах.
✔️Обеспечивает стабильную производительность по сравнению с существующими альтернативами.
Granian поддерживает ASGI/3, RSGI и WSGI, HTTPS, веб-сокеты.
Установка — pip install granian
🔗 Репозиторий проекта на GitHub
🔥14👍2😁2
🤔 Зачем нужна функция reload() модуля importlib
Используется для перезагрузки ранее импортированного модуля.
Это может пригодиться при динамической настройке. Функция reload делает возможным изменение частей программы без остановки всей программы. То есть можно незамедлительно наблюдать эффекты от изменений в компонентах. Это позволяет значительно сократить цикл разработки.
✏️ Стоит помнить, что когда модуль перезагружается, его словарь, содержащий глобальные переменные, сохраняется. Если в новой версии модуля нет имён переменных, функций, классов, которые были определены в старой версии, то старое определение остаётся.
#код
Используется для перезагрузки ранее импортированного модуля.
Это может пригодиться при динамической настройке. Функция reload делает возможным изменение частей программы без остановки всей программы. То есть можно незамедлительно наблюдать эффекты от изменений в компонентах. Это позволяет значительно сократить цикл разработки.
✏️ Стоит помнить, что когда модуль перезагружается, его словарь, содержащий глобальные переменные, сохраняется. Если в новой версии модуля нет имён переменных, функций, классов, которые были определены в старой версии, то старое определение остаётся.
#код
👍9😁7❤2❤🔥1
django 5.0.pdf
9.6 MB
🐍 Большой справочник по Django
По сути, это полная документация. Разбита на главы, охватывающие все темы. Есть нужные инструкции и примеры кода. Всё на 2800 страницах!
Вот некоторые из тем:
✅ Установка
✅ Модели и базы данных
✅ Шаблоны
✅ Классы
✅ Миграции
✅ Аутентификация
✅ Логирование
По сути, это полная документация. Разбита на главы, охватывающие все темы. Есть нужные инструкции и примеры кода. Всё на 2800 страницах!
Вот некоторые из тем:
✅ Установка
✅ Модели и базы данных
✅ Шаблоны
✅ Классы
✅ Миграции
✅ Аутентификация
✅ Логирование
👍22❤6🥱1
🐻❄️ Быстрее Pandas в 10 раз: Polars — высокопроизводительная библиотека для анализа больших данных на Python
Разработанная с нуля на языке Rust библиотека Polars объединяет в себе скорость, гибкость и богатый инструментарий для анализа больших данных на Питоне, что позволяет считать её достойной заменой популярной библиотеке Pandas.
👉 Читайте о Polars подробнее в нашей статье 👈
Разработанная с нуля на языке Rust библиотека Polars объединяет в себе скорость, гибкость и богатый инструментарий для анализа больших данных на Питоне, что позволяет считать её достойной заменой популярной библиотеке Pandas.
👉 Читайте о Polars подробнее в нашей статье 👈
🔥15👍1
💬 from ... import ... или import ...?
Что предпочитаете использовать чаще? Какие аргументы в защиту своих предпочтений у вас есть?
❤️ — чаще всего я просто импортирую модули целиком (import)
👍 — нередко делаю from ... import ...
#интерактив
Что предпочитаете использовать чаще? Какие аргументы в защиту своих предпочтений у вас есть?
❤️ — чаще всего я просто импортирую модули целиком (import)
👍 — нередко делаю from ... import ...
#интерактив
👍216❤29🥰3
🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
👍6❤1😁1
✏️ Сравнение производительности dict() и {} в Python
Создать словарь в Python можно несколькими способами. Как выяснил автор новой статьи, способ {} будет работать быстрее dict(). Но почему?
Чтобы это понять, автору пришлось покопаться в коде интерпретатора CPython. Если коротко:
▪️Когда выполняется dict(a=1, b=2), Python должен:
- распределить новый PyObject,
- создать dict при помощи метода __new__,
- вызвать его метод __init__, который внутри вызывает PyDict_Merge,
- так как kwargs не является dict, PyDict_Merge необходимо использовать более медленный метод, вставляющий элементы один за другим.
▪️Когда выполняется {}, Python должен:
- создать новый заранее распределённый словарь,
- один за другим вставлять элементы.
Более подробно об этом читайте в статье 👈
Создать словарь в Python можно несколькими способами. Как выяснил автор новой статьи, способ {} будет работать быстрее dict(). Но почему?
Чтобы это понять, автору пришлось покопаться в коде интерпретатора CPython. Если коротко:
▪️Когда выполняется dict(a=1, b=2), Python должен:
- распределить новый PyObject,
- создать dict при помощи метода __new__,
- вызвать его метод __init__, который внутри вызывает PyDict_Merge,
- так как kwargs не является dict, PyDict_Merge необходимо использовать более медленный метод, вставляющий элементы один за другим.
▪️Когда выполняется {}, Python должен:
- создать новый заранее распределённый словарь,
- один за другим вставлять элементы.
Более подробно об этом читайте в статье 👈
👍31❤3
🤖 Список инструментов и библиотек для разработки роботов на Python и C++
В репозитории можно найти:
✅ Библиотеки для работы с ROS (Robot Operating System).
✅ Инструменты для обработки изображений и компьютерного зрения.
✅ Различные фреймворки и библиотеки для машинного обучения.
✅ Библиотеки для симуляции и моделирования роботов.
✅ Инструменты для обработки данных и аналитики.
🔗 Ссылка на репозиторий
В репозитории можно найти:
✅ Библиотеки для работы с ROS (Robot Operating System).
✅ Инструменты для обработки изображений и компьютерного зрения.
✅ Различные фреймворки и библиотеки для машинного обучения.
✅ Библиотеки для симуляции и моделирования роботов.
✅ Инструменты для обработки данных и аналитики.
🔗 Ссылка на репозиторий
👍8
🔎 Библиотека Coverage для измерения процента покрытия кода тестами
Coverage.py использует инструменты анализа кода и хуки трассировки, чтобы определить, какие строки кода являются исполняемыми и какие были выполнены.
Эта библиотека является для Python де-факто стандартом проверки покрытия. На днях вышло свежее обновление.
🔗 Страница Coverage на PyPI
👩💻 Репозиторий на GitHub
Coverage.py использует инструменты анализа кода и хуки трассировки, чтобы определить, какие строки кода являются исполняемыми и какие были выполнены.
Эта библиотека является для Python де-факто стандартом проверки покрытия. На днях вышло свежее обновление.
🔗 Страница Coverage на PyPI
👩💻 Репозиторий на GitHub
🎉7👍4🔥2😁2
📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих»
Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!
🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!
🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
👍26🔥6❤🔥1
🐍 Corey Schafer — полезный YouTube-канал с туториалами по Python
Если вы вдруг не знали про Corey Schafer, то предлагаем ознакомиться. Этот парень записал множество отличных туториалов, связанных с Python. Недавно у него возникли проблемы со здоровьем, но он сообщил, что приходит в норму и готовит к выпуску новые видеоролики.
Вот некоторые из туториалов на его канале:
👉 Pandas
👉 Matplotlib
👉 Django: полнофункциональное веб-приложение
👉 Flask: полнофункциональное веб-приложение
👉 Настройка среды разработки Python в Sublime Text
👉 ООП в Python: работа с классами
Если вы вдруг не знали про Corey Schafer, то предлагаем ознакомиться. Этот парень записал множество отличных туториалов, связанных с Python. Недавно у него возникли проблемы со здоровьем, но он сообщил, что приходит в норму и готовит к выпуску новые видеоролики.
Вот некоторые из туториалов на его канале:
👉 Pandas
👉 Matplotlib
👉 Django: полнофункциональное веб-приложение
👉 Flask: полнофункциональное веб-приложение
👉 Настройка среды разработки Python в Sublime Text
👉 ООП в Python: работа с классами
❤16👍4🔥1
Что такое хуки? Как они используются в Python?
Хуки, в целом, — это технология, позволяющая изменить стандартное поведение тех или иных компонентов информационной системы. Они могут использоваться для изменения поведения функций, отслеживания состояния программы или выполнения дополнительных действий при вызове функций.
✔️Для создания хука в Python можно использовать декораторы. Вот простой пример:
#вопросы_с_собеседований
Хуки, в целом, — это технология, позволяющая изменить стандартное поведение тех или иных компонентов информационной системы. Они могут использоваться для изменения поведения функций, отслеживания состояния программы или выполнения дополнительных действий при вызове функций.
✔️Для создания хука в Python можно использовать декораторы. Вот простой пример:
def simple_hook(func):
def wrapper(*args, **kwargs):
print(f'Вызывается функция: {func.__name__}')
result = func(*args, **kwargs)
print(f'Функция {func.__name__} выполнена')
return result
return wrapper
# Применяем декоратор к функции
@simple_hook
def greet(name):
print(f'Привет, {name}!')
# Вызываем функцию
greet('Алексей')
#вопросы_с_собеседований
🤔14👍10🥰3💯2
This media is not supported in your browser
VIEW IN TELEGRAM
🔐 Простейший способ добавить вход через Google в приложение Django
В статье объясняется, как легко добавить в своё приложение авторизацию через Google (как в видео выше).
Процесс включает несколько шагов:
▫️Рендеринг HTML-страницы с кнопкой входа. При нажатии на кнопку пользователи будут перенаправлены на сайт Google для входа в систему.
▫️После входа в систему Google перенаправит пользователя (с помощью POST-запроса) на указанную страницу сайта.
▫️Мы получим информацию пользователя Google (например, электронную почту) из POST-запроса.
О том, как это сделать, читайте по ссылке 👈
В статье объясняется, как легко добавить в своё приложение авторизацию через Google (как в видео выше).
Процесс включает несколько шагов:
▫️Рендеринг HTML-страницы с кнопкой входа. При нажатии на кнопку пользователи будут перенаправлены на сайт Google для входа в систему.
▫️После входа в систему Google перенаправит пользователя (с помощью POST-запроса) на указанную страницу сайта.
▫️Мы получим информацию пользователя Google (например, электронную почту) из POST-запроса.
О том, как это сделать, читайте по ссылке 👈
👍13🥰3
🐍 Что такое «сырые» строки (Raw Strings) в Python?
«Сырые» строки в Python начинаются с префикса r. Пример:
r'Это сырая строка'
▶️ В «сырых» строках обратные слэши не обрабатываются как специальные символы. Вот пример для понимания:
О том, для чего это может быть нужно, читайте в статье
«Сырые» строки в Python начинаются с префикса r. Пример:
r'Это сырая строка'
▶️ В «сырых» строках обратные слэши не обрабатываются как специальные символы. Вот пример для понимания:
r'10\25\1991' == '10\25\1991'
# выведет False
О том, для чего это может быть нужно, читайте в статье
👍17👏2
💻 Библиотека aiohttp — асинхронный HTTP клиент/сервер
✔️Позволяет выполнять HTTP-запросы и обрабатывать их асинхронно, что полезно для высокопроизводительных веб-приложений.
✔️Поддерживает WebSockets, что позволяет устанавливать двунаправленные, постоянные соединения между клиентом и сервером.
На днях вышла версия aiohttp 3.9.2
🔗 Документация aiohttp
✔️Позволяет выполнять HTTP-запросы и обрабатывать их асинхронно, что полезно для высокопроизводительных веб-приложений.
✔️Поддерживает WebSockets, что позволяет устанавливать двунаправленные, постоянные соединения между клиентом и сервером.
На днях вышла версия aiohttp 3.9.2
🔗 Документация aiohttp
👍12