Разъяснивший Python – Telegram
Разъяснивший Python
7.63K subscribers
2.83K photos
40 videos
30 files
2.73K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: https://telega.in/c/python_pssss
Download Telegram
Pandas: Основные операции с DataFrame

Фильтрация позволяет выбрать строки, которые соответствуют определенным условиям. В этом примере мы создали новый DataFrame, содержащий только те строки, в которых значение столбца Age больше 30.

Ты можешь легко добавлять новые столбцы и удалять ненужные. axis=1 указывает, что мы работаем со столбцами. Параметр inplace=True позволяет сразу сохранить изменения в DataFrame.

Разъяснивший Python
round()

В Python функция round() округляет число до заданного количества знаков после запятой. Это полезно для форматирования чисел и работы с математическими расчётами.

Разъяснивший Python
👍1👎1
Использование транзакций для безопасного обновления базы данных

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

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

Разъяснивший Python
Полезные библиотеки Python

pdf-extract-api — крутой Python инструмент для конвертации любого изображения или PDF документа в текст Markdown или структурированный документ JSON с очень высокой точностью, включая табличные данные, числа или математические формулы.

API создан с помощью FastAPI и использует Celery для асинхронной обработки задач. Redis используется для кэширования результатов OCR.

GitHub/Инструкция

Разъяснивший Python
Полезные библиотеки Python

Psudohash — инструмент для генерации разнообразных паролей на основе ключевых слов.

Упрощает процесс создания сложных паролей, автоматизируя их модификацию через различные паттерны, такие как замена букв символами (например, «a» на @), применение чередования регистра букв, а также добавление специальных символов или цифр.

Psudohash будет особенно полезен для пентестеров для формирования списков паролей, предназначенных для проверки систем на устойчивость к brute-force атакам и взлому хешей.

GitHub/Инструкция

Разъяснивший Python
math.ceil() и math.floor()

В Python функции math.ceil() и math.floor() из модуля math используются для округления чисел вверх или вниз до ближайшего целого значения. Это полезно для контроля направления округления.

Разъяснивший Python
Работа со строками: Часть 3

Для поиска подстрок ты можешь использовать несколько функций: find() — возвращает индекс первого вхождения подстроки или -1, если не найдено. replace() — заменяет одну подстроку на другую.

Разбить строку на части можно с помощью split(), который возвращает список.

Строковые методы isalpha(), isdigit(), isalnum() помогают проверить, состоит ли строка из букв, цифр или является ли она алфавитно-цифровой.

Разъяснивший Python
Использование SQLAlchemy для автоматического создания таблиц из моделей

При работе с базами данных можно упростить процесс создания и управления таблицами, используя SQLAlchemy, который автоматически создаёт таблицы на основе Python-классов (моделей).

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

Разъяснивший Python
👍1👎1
list.append()

В Python метод list.append() добавляет элемент в конец списка. Это самый простой способ динамически расширять список.

Разъяснивший Python
set.intersection()

В Python метод set.intersection() возвращает пересечение множеств, то есть элементы, которые присутствуют во всех переданных множествах. Это удобно для нахождения общих данных.

Разъяснивший Python
👍1
Полезные библиотеки Python

pdf2docx
— Python модуль для конвертации PDF документов в docx и дальнейшего редактирования.

Установка:
$ pip install pdf2docx


Разъяснивший Python
Использование pandas для быстрой работы с базами данных

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

Этот лайфхак позволяет значительно ускорить процесс работы с данными в Python, особенно если вы часто работаете с большими объемами информации из базы данных!

Разъяснивший Python
👎3🤨1
Pandas: Агрегация и группировка данных

Группировка позволяет объединить строки по значениям в одном или нескольких столбцах и применить к ним агрегатные функции. Метод groupby создает группы по значению столбца Age и применяет функцию mean() для вычисления средней зарплаты в каждой группе.

Разъяснивший Python
👍1
Что такое магические методы dunder

Магические методы, также известные как «dunder» (double underscore) методы в Python, это специальные методы, которые начинаются и заканчиваются двойным подчеркиванием. Они позволяют определить, как объекты этого класса будут вести себя в различных контекстах, например, при использовании операторов Python, таких как +, -, *, / и т.д., при вызове функций и методов, при сериализации и многое другое.

Разъяснивший Python
👍1
Как начать отладку при утечке памяти в рабочем приложении

Для отладки утечек памяти в Python можно использовать инструменты, такие как Memory Profiler или objgraph.

Запустите вашу программу с помощью команды python -m memory_profiler my_noscript.py. Будет выведен подробный отчет о том, сколько памяти используется в каждой строке программы, а также общее использование памяти и любые утечки.

Этот код создаст изображение my_list.png, на котором будут показаны все объекты, на которые ссылается my_list, а также все объекты, которые ссылается на них. Это может помочь вам понять, какие объекты держат ссылки на ваши объекты и могут вызывать утечки памяти.

Разъяснивший Python
В каких ситуациях возникает исключение NotImplementedError

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

Разъяснивший Python
map()

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

Разъяснивший Python
functools.partial

В Python функция functools.partial() позволяет создавать новую функцию с заранее зафиксированными значениями некоторых аргументов. Это удобно для упрощения вызовов функций с часто используемыми параметрами.

Разъяснивший Python
Использование метода __repr__ для удобного отображения объектов

Когда вы разрабатываете классы, бывает полезно сделать так, чтобы объекты этого класса имели осмысленное текстовое представление при выводе. Для этого можно переопределить метод repr, который отвечает за представление объекта в строковом виде.

Этот лайфхак будет полезен разработчикам, которые часто выводят объекты в отладочных целях. Вместо отображения стандартной информации о памяти (например, <Person object at 0x...>), вы получите наглядное описание объекта. Это улучшает читаемость кода, особенно при отладке и логировании.

Разъяснивший Python
👎1
Конструктор

Метод, который вызывается при создании объектов, в ООП зовётся конструктором. Он нужен для объектов, которые изначально должны иметь какие-то значение. Например, пустые экземпляры класса "Студент" бессмысленны, и желательно иметь хотя бы минимальный обозначенный набор вроде имени, фамилии и группы.

В качестве Питоновского конструктора выступает метод init()

Разъяснивший Python
👍2
functools.lru_cache

В Python декоратор functools.lru_cache кэширует результаты вызовов функции, что позволяет ускорить выполнение повторяющихся вычислений. Это удобно для оптимизации функций с дорогостоящими вычислениями.

Разъяснивший Python