Python tricks | Хитрости Питона
5.67K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

Сотрудничество: @SIeep_Token

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
PyBrain

PyBrain — это библиотека машинного обучения, которая предоставляет широкий набор алгоритмов и инструментов для обучения нейросетей и других задач машинного обучения.

PyBrain имеет ряд преимуществ, которые делают его привлекательным для разработчиков машинного обучения:
— Простота использования: PyBrain имеет простой и понятный синтаксис, который делает его удобным для изучения.
— Модульность: PyBrain является модульной библиотекой, что позволяет разработчикам создавать собственные алгоритмы и инструменты.
— Производительность: PyBrain написан на Python, который является высокопроизводительным языком.

PyBrain может использоваться для решения широкого спектра задач машинного обучения, включая:
— Классификация: обучение нейронной сети для классификации входных данных в один из нескольких классов.
— Регрессия: обучение нейронной сети для прогнозирования непрерывных значений.
— Обнаружение аномалий: обучение нейронной сети для обнаружения аномальных входных данных.

🔗 Python tricks
Использование генераторов списков

Генераторы списков используются для создания новых списков из других итерируемых объектов. Так как генератор возвращает списки, его описание представляет собой выражение, включённое в квадратные скобки, выполняемое для каждого элемента списка.

Сюда же входит и описание цикла for, выполняющего проход по каждому элементу. Генераторы списков позволяют ускорить работу со списками за счёт того, что интерпретатор Python оптимизирован в расчёте на шаблоны, повторяющиеся при обходе списка.

🔗 Python tricks
Faker

Для тестирования функциональности приложения часто нужно заполнять его данными, например о пользователях. Использовать реальные персональные данные в такой ситуации некорректно и небезопасно. Поэтому лучше воспользоваться Faker — библиотекой, которая помогает сгенерировать большое количество ненастоящей информации. Это могут быть ФИО, телефоны, даты рождения, данные карточек и многое другое.

🔗 Python tricks
freezegun

Библиотека поможет, если нужно протестировать работу программы в конкретный период. Она «замораживает» параметры даты и времени на определенной точке, нужной программисту. Это может быть полезно, например, если тестируемая программа должна работать по-разному в зависимости от времени суток или дня недели.

🔗 Python tricks
🎄 ТРОГАЙТЕ, это на Новый год! 

Профессия «Python-разработчик» 🐍

🎁  Скидка до 120 000 р. + доступ ко второй профессии в подарок. А еще 1 из 4 бонусов на выбор при покупке курса!

Освойте один из самых популярных языков для бэкенда, научитесь создавать полноценные сайты и веб-приложения и реализовать внутреннюю логику работы программ на фреймворке Django.

Уже во время обучения вы вступите в программу «Карьерный трек», чтобы найти свою первую работу в IT.

📌 Пройдите 5 бесплатных уроков и поймите, подходит ли вам профессия и стоит ли продолжать!

Реклама. АНПОО "ХЕКСЛЕТ КОЛЛЕДЖ". ИНН 7839056670.
Voluptuous

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

Для использования Voluptuous необходимо сначала импортировать библиотеку:

import voluptuous as v


🔗 Python tricks
Fugue

Fugue — это фреймворк Python для создания рабочих процессов Google Cloud Composer. Он предоставляет набор инструментов и библиотек, которые упрощают разработку, развертывание и управление рабочими процессами в Google Cloud.

Чтобы использовать Fugue в Python, необходимо сначала установить его с помощью pip:

pip install fuga


После установки можно начать создавать рабочие процессы. Рабочие процессы в Fugue представляют собой набор задач, которые выполняются последовательно или параллельно. Задачи могут быть простыми, такими как запуск команды или загрузка данных, или сложными, такими как выполнение машинного обучения или анализа данных.

Код на картинке создает задачу, которая запускает команду echo.

🔗 Python tricks
pow

Метод pow() вычисляет степень числа, возводя первый аргумент во второй аргумент. Возвращает 1, если значение степени равно 0; 0 - если значение числа равно 0.

🔗 Python tricks
Метод reverse()

Метод reverse() меняет местами элементы списка. Он не возвращает никакого значения. Он обновляет существующий список. Если тебе нужно получить доступ к отдельным элементам списка в обратном порядке, лучше использовать функцию reversed().

🔗 Python tricks
Библиотека Celery

Помогает правильно распределить множество задач в больших проектах, расставить приоритеты и выполнить их в оптимальной последовательности. Часто используется в backend-разработке, например с фреймворком Django.

🔗 Python tricks
Six

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

В этом примере функция dispatch_types использует константы типов из библиотеки Six для проверки типа переданного значения и вызова соответствующей функции обработки.

🔗 Python tricks
Очистка элементов в последовательности

Иногда возникает необходимость в удалении ненужных объектов последовательности. Для этого используют itertools, а именно метод compress.

Первым аргументом передаётся контейнер, к примеру список. Вторым аргументом — логические значения, соответствующие элементам в контейнере.

Если логическое значение равно True или 1, то элемент остаётся в последовательности, иначе — удаляется из нее.

🔗 Python tricks
funcy

Это набор утилит для практического применения, набор конструкций, которые упрощают код. Он облегчает написание программ и работу с простыми, но однообразными действиями. Например, Funcy упрощает повседневные задачи разработчика, например помогает быстро просмотреть структуру данных или модифицировать функцию.


🔗 Python tricks
tqdm

Библиотека, полезная для написания скриптов. Она генерирует прогресс-бары, которые показывают продвижение по коду и оставшееся время его выполнения. Программа, которая долго работает, — «черный ящик» для разработчика: он не знает, зависла она или нет, на каком этапе выполнения сейчас находится. Tqdm помогает легко и быстро отслеживать ее состояние и получать больше информации. Информация о выполнении программы будет выводиться в консоль в удобном для разработчика виде.

🔗 Python tricks
Найдите ошибку в коде

Ошибка в этом коде заключается в том, что функция factorial() вызывает саму себя, если n равно -1. В этом случае функция будет вызывать себя бесконечно, так как n никогда не станет равно 0.

Чтобы исправить ошибку, необходимо добавить условие, которое будет проверять, равно ли n 0. Если это так, то функция должна возвращать 1, а не вызывать саму себя.


🔗 Python tricks
JPype

JPype — это библиотека Python, которая позволяет обращаться к Java-классам и объектам из Python. Она написана на языке Java и использует JNA (Java Native Access) для взаимодействия с Java-библиотеками.

Чтобы использовать JPype в Python, необходимо сначала установить библиотеку. Это можно сделать с помощью менеджера пакетов pip:

pip install JPype1


После установки библиотеки можно импортировать ее в Python:

import JPype1

🔗 Python tricks
Метод setdefault()

Метод setdefault() в Python возвращает значение по указанному ключу из словаря. Если ключ отсутствует в словаре, метод добавляет ключ в словарь со значением по умолчанию, а затем возвращает это значение.

Метод setdefault() имеет два параметра:

— Ключ, по которому необходимо получить значение.
— Значение по умолчанию, которое будет добавлено в словарь, если ключ отсутствует.

Если ключ присутствует в словаре, метод возвращает значение, связанное с этим ключом. Если ключ отсутствует в словаре, метод добавляет ключ в словарь со значением по умолчанию, а затем возвращает это значение.

🔗 Python tricks
Логические all и any

Встроенные функции all() и any(), которые применяются к последовательностям (спискам, кортежам и т. д.) и возвращают bool значение.

all(iterable) — возвращает True, если все элементы iterable истинны (или iterable пуст).
any(iterable) — возвращает True, если хотя бы один элемент iterable истинен.

Эти функции могут использоваться для проверки каких-либо условий на всём наборе данных.
Например, проверить, что все числа больше нуля, или что хотя бы одно число больше 10.

Важные моменты:
— Для пустых iterable all() вернёт True, а any()False.
— Элемент считается ложным, если его bool() равен False.
— Функции останавливаются при первом ложном (для all) или истинном (для any) элементе.

🔗 Python tricks
re.match()

re.match() — поиск вхождения шаблона в начало строки. В качестве аргументов требуется передать сначала шаблон, а потом строку для проверки.

🔗 Python tricks
re.findall()

re.findall()
— поиск всех вхождений шаблона в любом месте строки.

🔗 Python tricks