Pythoner
Kanalga Telegram’da o‘tish
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
Ko'proq ko'rsatish6 542
Obunachilar
-224 soatlar
-167 kun
-5530 kun
Postlar arxiv
6 541
⌨️Добавляем классу большую функциональность
Декоратор
@ classmethod — это метод, который получает класс в качестве параметра, который принято обозначать как cls. Он указывает на класс ToyClass, а не на объект этого класса.
Методы класса привязаны к самому классу, а не его экземпляру. Они могут менять состояние класса, что отразится на всех объектах этого класса, но не могут менять конкретный объект.
Проще говоря, @ classmethod — это обычный метод класса, имеющий доступ ко всем атрибутам класса, через который он был вызван.6 541
Получаем информацию о памяти на диске
Со встроенным модулем
shutil многие уже, вероятно, знакомы, но его обычно используют в контексте задач копирования, переноса файлов и папок.
Но с помощью shutil мы можем даже получить информацию о памяти на жестком диске компьютера. Метод disk_usage возвращает количество всей, занятой и свободной памяти.
Так как все три значения возвращаются в байтах, в примере мы их перевели и вывели в гигабайты для лучшей наглядности.6 541
Находим соответствия в строках
В стандартной библиотеке Python существует модуль difflib, в котором есть интересный метод get_close_matches. Он позволяет найти в списке строки, похожие на некую исходную.
Данный метод ищет "наилучшие" возможные совпадения. Первый аргумент задаёт искомую строку, второй аргумент – список, в котором выполняется поиск.
Также в метод можно передать необязательный аргумент n, который задаёт максимальное число возвращаемых совпадений.
6 541
Функция itertools.cycle
В пайтон есть классный модуль itertools для создания собственных итераторов. Функции данного модуля довольно эффективны в работе, поэтому их часто используют в реальных проектах.
6 541
♾Прогресс выполнения программы
Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль
tqdm является простым и лаконичным вариантом.
Привычный range можно заменить на trange для визуализации прогресса. А для итерации по какой-либо последовательности, достаточно просто передать её в функцию tqdm. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook.6 541
Вам нравится читать контент на этом канале?
Возможно, вы задумывались о том, чтобы купить на нем интеграцию?
Следуйте 3 простым шагам, чтобы сделать это:
1) Регистрируйтесь по ссылке: https://telega.in/c/pyth0n_er
2) Пополняйтесь удобным способом
3) Размещайте публикацию
Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
6 541
Находим наименьшие и наибольшие
В стандартной библиотеке есть модуль
heapq, который, как можно понять по названию, реализует структуру даных куча.
Особенности и пользу этой структуры данных пока что разбирать не будем, но посмотрим на два интересных метода в этом модуле.
С помощью методов nsmallest и nlargest можно получить наименьшие и наибольшие элементы в списке.
Первым аргументов передается, сколько элементов нужно взять, вторым — список6 541
erid:2VtzqxdvwK4
Как купить квартиру в Москве в ипотеку без платежей?
Об этом вам в своем телеграм-канале расскажет Дарья - официальный представитель застройщиков.
А так же вы узнаете:
❔Как зарабатывать на инвестициях в недвижимость даже на падающем рынке
❔Во что вложиться, если есть 2,5 млн рублей
❔На какие факторы нужно обращать внимание при покупке квартиры
❔Как оформить несколько ипотек, если нет подтвержденного дохода
❔Как сэкономить на ипотеке
❔Апартаменты с гарантированным доходом
🔥
Доступ к закрытым продажам инвестиционных квартир, минимальные проценты по ипотеке и скидки от застройщика, и еще больше интересных предложений вы найдете тут👇
Подписывайтесь на канал и получите гайд: "ТОП 7 ОШИБОК при покупке недвижимости в новостройке" в закрепе.
Реклама ИП Слабоспицкая Д.С.
ИНН 4632367276806 541
🖥Статические методы
Отличие статических методов от обычных в том, что они привязаны к классу, а не объекту. То есть они могут быть вызваны напрямую у класса.
Статический метод не принимает ни объект (self), ни класс (cls) в аргументах. То есть такие методы не могут модифицировать ни объект, ни сам класс.
Реализовать статический метод можно двумя способами. Один из них — присвоить классу новый метод, напрямую передав изначальный метод в функцию staticmethod.
Но так делать не принято, поэтому чаще всего staticmethod используют в качестве декоратора при написании методов прямо в классе.
6 541
Создаем виртуальное окружение
Виртуальное окружение — это изолированная среда, которая имеет свои локальные интерпретатор и пакеты, независимые от глобального интерпретатора и других окружений.
В стандартной библиотеке Python третьей версии есть пакет venv, который позволяет создавать виртуальные окружения удобно и быстро. Пример представлен на картинке.
Скрипт activate в директории bin предназначен для активации окружения, а команда deactivate в уже активированном окружении — для выхода из него.
В случае успешного создания и активации у вас в терминале должно появится название вашего виртуального окружения в круглых скобках.
