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

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

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

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

Метод center() возвращает новую центрированную строку после заполнения ее указанным символом. Если fillchar не указан, в качестве аргумента по умолчанию используется пробел. Данный метод не изменяет исходную строку.

🔗 Python tricks
Просмотр атрибутов и методов класса

С помощью функции dir() можно посмотреть список атрибутов и методов ‌‎любого‌‎ ‌‎объекта. Ее удобно использовать при работе в интерпретаторе, особенно при изучении пакетов сторонних разработчиков.

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

Декораторы добавляют функциональность коду. То есть это функции, вызывающие другие объекты/функции. Будучи вызываемыми функциями, декораторы возвращают объект, который будет вызываться при вызове функции-декоратора.

🔗 Python tricks
Освобождение памяти

Основной механизм, который используется Python для освобождения памяти — это сборщик мусора (garbage collector). Сборщик мусора автоматически освобождает память, которая больше не используется. Он определяет, что память больше не используется, если на объект нет ссылок.

🔗 Python tricks
Объединение списков с помощью Zip

Функция zip() в Python – это встроенная функция, которая используется для объединения нескольких списков (или других итерируемых объектов) в один список кортежей, где каждый кортеж содержит элементы с одинаковыми индексами из каждого из исходных списков.

🔗 Python tricks
string.rfind

Метод rfind() возвращает целочисленное значение. Если внутри строки существует заданная подстрока, возвращается наибольший индекс, в котором найдена подстрока. Если подстрока не существует внутри строки, возвращается -1.

🔗 Python tricks
Распаковка

Распаковка (unpacking, также называемая Деструктуризация) представляет разложение коллекции (кортежа, списка и т. д.) на отдельные значения. Так, как и многие языки программирования, Python поддерживает концепцию множественного присваивания.

🔗 Python tricks
Объем памяти объекта

В Python для определения размера объекта в байтах можно использовать функцию getsizeof() из встроенного модуля sys. Функция getsizeof() возвращает размер объекта в байтах, включая весь объект и все его ссылки.

🔗 Python tricks
Присоединение коллекции

Коллекции в Python делятся на последовательности, множества и отображения. Среди встроенных типов данных к первым относятся списки (тип данных list) и кортежи (tuple), ко вторым – обычные (изменяемые) и фиксированные множества (set и frozenset), к третьим – словари (dict).

Для их присоединения используется разные методы, но в нашем случае мы работаем через .join().

🔗 Python tricks
Вывод текущей директории

Текущей директорией называется та, в которой был запущен скрипт. Для определения текущей директории используется функция os. getcwd()

🔗 Python tricks
Функция высшего порядка

Функция высшего порядка — это функция, которая принимает в качестве аргумента другую функцию и/или возвращает функцию в качестве результата.

Функции высшего порядка могут использоваться для различных целей, включая:

— Инкапсуляция многократно используемого поведения
— Создание более абстрактного кода
— Усиление выразительности кода

🔗 Python tricks
Вывод импортированных модулей

При импорте модуля Python выполняет весь код в нём. При импорте пакета Python выполняет код в файле пакета init.py , если такой имеется. Все объекты, определённые в модуле или init.py , становятся доступны импортирующему.

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

Оператор "not" позволяет инвертировать булево значение.

В этом примере мы используем оператор "not" для проверки, не идет ли дождь.

🔗 Python tricks
Получение ID текущего процесса

Функция id() возвращет уникальный идентификатор переданного ей в качестве аргумента объекта. Этот идентификатор является адресом в памяти, по которому расположен сам объект.

🔗 Python tricks
3 простых шага для оптимизации гиперпараметров в любом Python-скрипте. Шаг 1

Возьмите параметры, которые хотите оптимизировать, и поместите их в словарь в начало скрипта. Это действие позволит вам эффективно отделить параметры поиска от остального кода.

🔗 Python tricks
3 простых шага для оптимизации гиперпараметров в любом Python-скрипте. Шаг 2

Теперь вы можете поместить всю логику обучения и оценки внутрь функции train_evaluate. Эта функция принимает параметры на вход, а на выходе выдает результат проверки.

🔗 Python tricks
3 простых шага для оптимизации гиперпараметров в любом Python-скрипте. Шаг 3

Теперь мы используем train_evaluate в качестве цели в любой библиотеке оптимизации неизвестной функции («черного ящика»).

Я предпочитаю Scikit Optimize, но вы можете выбрать другую библиотеку.

🔗 Python tricks
Missingo

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

🔗 Python tricks
#Вопросы_с_собеседования
Вы реализуете функцию для анализа текста, которая должна возвращать слово, которое встречается в тексте наиболее часто, не учитывая регистр букв. Если два или более слов имеют одинаковую максимальную частоту, функция должна вернуть слово, которое встречается в тексте первым. Напишите эффективную функцию на Python для решения этой задачи.


Функция most_frequent_word анализирует предоставленный текст, разделяет его на слова, приводит к нижнему регистру для игнорирования различий в написании, и подсчитывает частоту каждого слова. Затем функция возвращает слово с наибольшей частотой, при этом если есть несколько слов с одинаковой частотой, выбирается то, которое встретилось в тексте первым.

🔗 Python tricks
Напишите регулярное выражение, которое будет принимать идентификатор электронной почты. Используйте модуль re.

Мы используем функцию re.match() для сравнения переданного идентификатора электронной почты с регулярным выражением. Если совпадение найдено, мы возвращаем True, иначе False. Например, вызов is_valid_email('example@mail.com') вернет True, а вызов is_valid_email('not_valid_email') вернет False.

🔗 Python tricks