__EasyPy__
32 subscribers
147 photos
2 videos
1 file
33 links
Пишем интересные статьи, тесты для языка Python, проводим занятия по языку программирования Python, выполняем заказы...
Наше сообщество ВК: https://vk.com/easypy
Наш чат: https://t.me/EasyPy
Наш партнер: https://t.me/backenddt
Download Telegram
Git Merge и Git Rebase

Git Merge

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

Git Rebase

Rebase — еще один способ перенести изменения из одной ветки в другую. Rebase сжимает все изменения в один «патч». Затем он интегрирует патч в целевую ветку.

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

#easypy #git #programming
Вычисление размера объектов

Так как в python всё является объектами, мы можем вычислить размер практически у всего с помощью sys.getsizeof().

Функция getsizeof вызывает метод sizeof объекта и добавляет дополнительные данные сборщика мусора. Хотя все встроенные объекты вернут верный размер, в общем случае это не будет так для пользовательских объектов.

#easypy #python #programming
👍2
Создание капчи

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

В Python капчу реализовать можно довольно просто — с использованием пары модулей сначала создаётся картинка, затем сохраняется в определённый файл.

#easypy #python #programming
👍1
Делаем GIF из видео

Преобразуем видео в GIF просто и элегантно. Видео нужно сохранить в папку со скриптом, там же появится гифка. У пакета также есть дополнительная функциональность, позволяющая менять разрешение и изменять отрезки времени для гифки. Документацию можно найти по ссылке: https://pypi.org/project/moviepy/

#easypy #python #programming #moviepy
👍2
Работа с IP адресами

Если вам приходится писать на Python программы для работы с сетью — значит, вам может пригодиться модуль ipaddress.

К примеру, один вариант его использования — генерация списка IP-адресов из диапазона адресов, заданных в формате CIDR (Classless Inter-Domain Routing, или бесклассовая адресация). У модуля ipaddress есть и много других интересных возможностей

#easypy #python #programming #ip #ipaddress
👍2
Ищем опечатки

Пакет spellchecker позволяет отыскать ошибки в тексте, а также может предложить варианты исправлений. В примере проходимся по списку из двух слов, из которых одно ('therre') написано с опечаткой. Функция correction замечает это и предлагает одно самое вероятное исправление, а candidates — несколько.

Пакет поддерживает шесть языков. Документация: https://pypi.org/project/pyspellchecker/

#easypy #python #programming #spellchecker
👍3
Возврат нескольких значений из функции

Знаете ли вы, что можно осуществлять возврат нескольких значений из функции? Вот как это сделать. Ознакомьтесь с приведенным на картинке примером кода. Значения вернутся в кортеже.

#easypy #python #programming
👍2
Работа с атрибутами объектов

Рассмотрим специальные функции для работы с атрибутами. getattr позволяет получить атрибут, setattr — установить его, delattr — удалить. hasattr проверяет, существует ли атрибут с указанным названием у объекта или нет.

Каждой функции первыми двумя аргументами передаются сам объект и название атрибута. В setattr также нужно передать новое значение для атрибута.

На практике эти четыре функции используются не слишком часто, но знать о них полезно.

#easypy #python #programming
👍2
Emoji

Пакет Emoji пакет очень помогает при анализе данных из соцсетей, позволяя встраивать в текст и выделять из него эмодзи. Почитать документацию и ознакомиться с другими примерами можно на странице пакета emoji - https://pypi.org/project/emoji/.

#python #easypy #emoji #programming
👍1
❗️Менеджер памяти в Python (освобождение памяти) - школа бэкенда от Яндекса😎😎

💭Для управления памятью и своевременного освобождения ее Python хранит число ссылок на каждый объект. Когда число ссылок становится равно нулю - объект сразу удаляется из памяти.

☝🏻Посмотреть количество ссылок на объект можно вызвав - print(sys.getrefcount(object))

За освобождение памяти в python отвечает сборщик мусора. О нем подробнее поговорим позже❗️

#easypy #python #memory #programming
👍2
Поговорим о декораторе property❗️

💭@property-это один из самых популярных python-декораторов.

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

ВНИМАНИЕ! Метод к которому применен декоратор property должен имень единственный аргумент self. То есть при обращении к атрибуту нельзя передавать ему никакие аргументы.

#easypy #python #programming
👍2
Прогресс выполнения программы

Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль tqdm является простым и лаконичным вариантом.

Привычный range можно заменить на trange для визуализации прогресса. А для итерации по какой-либо последовательности, достаточно просто передать её в функцию tqdm. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook.

Кстати, интересный факт – название tqdm произошло от арабского слова "taqaddum" (تقدّم), которое означает "прогресс," а также это ещё и сокращение от "я тебя сильно люблю" на испанском (te quiero demasiado).

#easypy #python #programming
👍3