Получи случайную криптовалюту за регистрацию!

Senior Python Developer

Логотип телеграм канала @seniorpy — Senior Python Developer S
Логотип телеграм канала @seniorpy — Senior Python Developer
Адрес канала: @seniorpy
Категории: Технологии , Образование
Язык: Русский
Количество подписчиков: 39.51K
Описание канала:

Публикуем интересные/полезные фичи/библиотеки языка.
По вопросам сотрудничества: @adv_and_pr
Канал на бирже:
https://telega.in/c/seniorpy

Рейтинги и Отзывы

1.50

2 отзыва

Оценить канал seniorpy и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

0

3 звезд

0

2 звезд

1

1 звезд

1


Последние сообщения 2

2023-07-03 11:02:06 Давайте напишем код, который реализует алгоритм поиска в глубину (DFS) на графе. Для простоты представим граф в виде словаря, где ключи - это вершины, а значения - списки смежных вершин.

python
def dfs(graph, start, visited=None):
if visited is None:
visited = set()
5.5K views08:02
Открыть/Комментировать
2023-07-02 22:03:41
aiohttp

Библиотека aiohttp — это асинхронный HTTP-клиент/сервер для asyncio и Python. Она поддерживает как клиентские, так и серверные веб-сокеты “из коробки” без коллбэков. Веб-сервер имеет промежуточное ПО (middlewares), сигналы и подключаемую маршрутизацию.

В этом примере создается веб-приложение с помощью aiohttp.web.Application, добавляются маршруты для обработки запросов к корневому URL-адресу (/) и URL-адресу с именем (/{name}). Функция handle обрабатывает запросы, извлекает имя из параметров запроса (или использует значение по умолчанию “Anonymous”) и возвращает ответ с текстом приветствия.
6.1K views19:03
Открыть/Комментировать
2023-07-01 22:03:55
Six

Библиотека Six — это мощная библиотека, которая предназначена для сглаживания различий между двумя версиями Python: 2 и 3. Она предоставляет утилиты для обеспечения совместимости кода, который работает на обеих версиях Python без изменений. Six состоит всего из одного файла Python, поэтому его легко скопировать в проект.

В этом примере функция dispatch_types использует константы типов из библиотеки Six для проверки типа переданного значения и вызова соответствующей функции обработки.
6.2K views19:03
Открыть/Комментировать
2023-06-30 16:12:14
Ускоряем работу Python

Numba — это библиотека, которая дает пользователю возможность компилировать код сразу после его выполнения (компилятор "Just-in-Time"). Таким образом достигается скорость кода C, не отказываясь от простоты Python.

Numba может определять тип процессора, на котором работает, и использовать аппаратно-зависимую оптимизацию и различные потоки (чего Python сам по себе сделать не может). Компилятор создан для работы с Numpy, однако плохо совместим с динамическими структурами данных, а также требует поддержки JIT-компилятора от системы.

Этот код определяет две функции для вычисления чисел Фибоначчи: одну без использования Numba и другую с использованием декоратора @njit от Numba. Затем код вычисляет время выполнения каждой функции для большого значения n. Запустив программу, вы увидите, что версия с использованием Numba выполняется значительно быстрее.
6.4K views13:12
Открыть/Комментировать
2023-06-29 21:56:35
PyBrain

PyBrain — это модульная библиотека машинного обучения для Python.
Ее цель - предложить гибкие, простые в использовании, но все же мощные алгоритмы для задач машинного обучения и разнообразные предопределенные среды для тестирования и сравнения ваших алгоритмов.

В этом примере мы создаем набор данных для классификации с двумя входными и тремя выходными значениями и добавляем данные в набор данных. Затем данные разделяются на обучающую и тестовую выборки и преобразуются для использования с PyBrain.
Далее создается нейронная сеть с двумя входными узлами, тремя скрытыми узлами и тремя выходными узлами и тренер для обучения сети. Сеть обучается в течение 100 эпох и выводится результат на обучающей и тестовой выборках.
6.3K views18:56
Открыть/Комментировать
2023-06-29 16:04:06
__repr__

В Python __repr__ является магическим методом, который определяет строковое представление объекта, которое используется для представления объекта при вызове функции repr() или при выводе объекта на консоль.

При вызове функции print() или print(repr()) будет вызван метод __repr__ для объекта и его строковое представление будет выведено на консоль.

Использование метода __repr__ особенно полезно при отладке, так как позволяет получить информацию о состоянии объекта и его атрибутах.

В данном примере класс Book имеет атрибуты title, author и year, которые инициализируются при создании экземпляра класса. Метод __repr__ возвращает строку, представляющую объект Book в виде: Book(title='<название>', author='<автор>', year=<год>).
5.8K views13:04
Открыть/Комментировать
2023-06-29 11:32:17
Fire

Fire — это библиотека, которая автоматически генерирует интерфейсы командной строки (CLI) из любого объекта Python. Она может использоваться для отладки и разработки кода на Python, а также для превращения существующего кода в интерфейс командной строки.

В этом примере мы определяем функцию hello, которая принимает один аргумент name со значением по умолчанию "World". Затем мы вызываем функцию Fire из библиотеки fire, передавая ей функцию hello в качестве аргумента. Это превращает функцию hello в интерфейс командной строки.

Теперь, если мы запустим этот скрипт из командной строки с аргументом --name=David, то увидим следующий вывод: Hello David!

Это происходит потому, что Fire автоматически генерирует интерфейс командной строки для функции hello, позволяя нам передавать аргументы через командную строку.
5.6K views08:32
Открыть/Комментировать
2023-06-28 16:19:06
Eli5

Библиотека eli5 используется для анализа и интерпретации результатов моделей машинного обучения. Она работает с такими библиотеками, как: Scikit-learn, XGBoost, CatBoost, Keras, lightning и LightGBM.

В этом примере мы загружаем датасет Бостон из библиотеки sklearn, разбиваем его на обучающую и тестовую выборки и строим модель линейной регрессии.
Затем мы используем функцию show_weights из библиотеки eli5 для отображения весов линейной регрессии.

eli5 может помочь понять, какие признаки важны для модели и как они влияют на предсказания. Это может быть полезно для улучшения качества моделей и для объяснения их работы другим людям.
5.9K views13:19
Открыть/Комментировать
2023-06-27 20:41:10
NamedTuples

NamedTuples - это удобная структура данных, представляющая неизменяемые кортежи с именованными полями.
Они предоставляют удобный способ создания и использования простых объектов данных без необходимости определения собственных классов.

Для использования необходимо импортировать модуль collections из стандартной библиотеки Python. В этом модуле определен класс namedtuple(), который используется для создания именованных кортежей.

В приведенном примере создается именованный кортеж Point с полями x и y. Затем создается экземпляр p этого именованного кортежа с значениями 2 и 5 для полей x и y соответственно. Доступ к полям именованного кортежа осуществляется через их имена - p.x, p.y. Именованные кортежи являются неизменяемыми, поэтому попытка изменить значение поля приведет к ошибке. Также можно получить доступ к элементам по индексу, как в обычном кортеже. Метод _asdict() позволяет преобразовать именованный кортеж в словарь.
6.0K views17:41
Открыть/Комментировать
2023-06-27 13:42:12
Voluptuous

Voluptuous — это библиотека для валидации данных. Она предназначена для валидации входящих данных в Python-приложениях, включая HTTP-запросы. Voluptuous также может быть использована для валидации структур данных, которые уже находятся внутри приложения.

В этом примере мы определяем схему, которая ожидает словарь с двумя ключами: 'name' и 'age'. 'name' является обязательным ключом, и его значение должно быть строкой длиной не менее 1 символа. 'age' не является обязательным ключом, но если он присутствует, его значение должно быть целым числом, не меньшим 18.

После определения схемы мы выполняем валидацию. Если данные проходят ее, то возвращаются без изменений. Если данные не проходят валидацию, библиотека Voluptuous генерирует исключение.
6.1K views10:42
Открыть/Комментировать