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
Фреймворк PySimpleGUI


PySimpleGUI — это популярный фреймворк для создания простых графических интерфейсов пользователя.
Он позволяет быстро создавать интерфейсы при помощи Python, без необходимости изучать сложные GUI библиотеки, такие как Tkinter, Qt или wxPython.

PySimpleGUI широко используется для создания небольших утилит и инструментов с GUI, например:
— Простые GUI для скриптов автоматизации.
— Инструменты для обработки и визуализации данных.
— Маленькие вспомогательные приложения для повседневных задач.

Основные преимущества PySimpleGUI:
— Простой и интуитивно понятный синтаксис.
— Кроссплатформенность: работает на Windows, MacOS, Linux.
— Встроенная поддержка многих виджетов и тем оформления.
— Автоматическое размещение элементов GUI.

🔗 Python tricks
Dictionary Comprehension

Dictionary comprehension — это конструкция, позволяющая компактным способом создавать словари на основе существующих итерируемых объектов.

Dictionary comprehension применяется в ситуациях, когда нужно:
— Быстро создать словарь из списка или другого итерируемого объекта.
— Преобразовать одну структуру данных в словарь.
— Создать словарь с некоторой обработкой элементов.

Основные преимущества dictionary comprehension:
— Компактный и читаемый синтаксис по сравнению с циклами.
— Лаконичное создание словарей "на лету".
— Оптимизированная производительность по сравнению с циклами.
🔗 Python tricks
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