ar
Feedback
Python академия

Python академия

الذهاب إلى القناة على Telegram

Учи Python быстро и легко. Ежедневно публикуем практические задачи, разборы, готовые решения, объяснения логики, советы по алгоритмам. ✔ Подходит для прокачки навыков кодирования. По всем вопросам @evgenycarter

إظهار المزيد
7 300
المشتركون
-224 ساعات
-157 أيام
-3530 أيام
أرشيف المشاركات
Создание и использование виртуальной среды virtualenv — инструмент для создания изолированных сред Python. Программа создает
Создание и использование виртуальной среды virtualenv — инструмент для создания изолированных сред Python. Программа создает папку, которая содержит все необходимые исполняемые файлы для использования пакетов, необходимых для проекта. Создание новой виртуальной среды требуется только один раз для каждого проекта, для которого вы хотите изолировать зависимости: python3 -m venv venv Это создаст папку venv, содержащую оснастку сценариев и копию python самого двоичного файла. Название папки не имеет значения. Чтобы активировать виртуальную среду, нужно запустить activate файл: source venv/bin/activate и далее мы можем свободно устанавливать любые зависимости, которые никак не скажутся на работе в будущих проектах. Подписывайтесь на канал 👉@pythonofff

Тестирование на pytest pytest — ближе по духу к языку Python нежели unittest, которая накладывает определенные обязательства
Тестирование на pytest pytest — ближе по духу к языку Python нежели unittest, которая накладывает определенные обязательства при разработке тестов. Например, создание классов-наследников от TestCase или выполнение определенной процедуры запуска тестов. Но при разработке на pytest ничего этого делать не нужно. Вы просто пишете функции, которые должны начинаться с "test_" и используете assert, встроенные в Python. Также он поддерживает запуск тестов на unittest и nose, то есть полная обратная совместимость с ними. Подписывайтесь на канал 👉@pythonofff

Получи грант на обучение в Центральном университете Прояви себя, получи грант до 2,8 млн на обучение ИТ и бизнесу в вузе. Для
Получи грант на обучение в Центральном университете Прояви себя, получи грант до 2,8 млн на обучение ИТ и бизнесу в вузе. Для школьников 10-х и 11-х классов, СПО. Подать заявку #реклама apply.centraluniversity.ru О рекламодателе

Добавляем классу большую функциональность Декоратор @ classmethod — это метод, который получает класс в качестве параметра, к
Добавляем классу большую функциональность Декоратор @ classmethod — это метод, который получает класс в качестве параметра, который принято обозначать как cls. Он указывает на класс ToyClass, а не на объект этого класса. Методы класса привязаны к самому классу, а не его экземпляру. Они могут менять состояние класса, что отразится на всех объектах этого класса, но не могут менять конкретный объект. Проще говоря, @ classmethod — это обычный метод класса, имеющий доступ ко всем атрибутам класса, через который он был вызван. Подписывайтесь на канал 👉@pythonofff

Вычисляем размер объектов в памяти Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(o
Вычисляем размер объектов в памяти Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(object[, default]). Поскольку Python написан в полном соответствии с парадигмой ООП, таким объектом может быть все что угодно. Однако, следует помнить, что хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов. Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError . Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора, если конечно объект управляется сборщиком мусора. Подписывайтесь на канал 👉@pythonofff

Офисные башни JOIS от MR Office в 5 мин от Москва-Сити JOIS - это современные башни класса А от нового бренда, объединяющего
Офисные башни JOIS от MR Office в 5 мин от Москва-Сити JOIS - это современные башни класса А от нового бренда, объединяющего все офисные объекты MR Group. Проект премиального бизнес-центра включает две башни: 1) 43-этажный небоскреб MAST с офисами от 96 м² и возможностью приобретения офисных помещений по отдельности, а также целыми этажами или блоками 2) Башня CREDO представляет из себя единый офис площадью 22 000 м² Главные преимущества будущего проекта: ✨Ландшафтный парк площадью 1,3 Га и пешеходный маршрут более 2,3 км ✨Расположение в 5 минутах до ТТК и Москва-сити ✨3-уровневый подземный паркинг, рассчитанный на 400 машиномест ✨Отделка Shell&Core - оптимальное решение для создания эксклюзивного интерьера ✨Рассрочка 0% на приобретение коммерческой недвижимости Узнать больше Проектная декларация на сайте https://наш.дом.рф/. Застройщик: ООО СЗ Л2-ДЕВЕЛОПМЕНТ #реклама mr-group.ru О рекламодателе

Not a Number В модуле math есть особый объект, который называется NaN (Not a Number). Эти объекты NaN не уникальны, и даже не
Not a Number В модуле math есть особый объект, который называется NaN (Not a Number). Эти объекты NaN не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников. Например можно создать подобный объект, просто передав строку 'nan' во float. Кстати говоря, это значит что вы можете использовать NaN в качестве ключа в словаре (хотя мы и не советуем это делать). Подписывайтесь на канал 👉@pythonofff

Ускоряем код с помощью векторизации Одним из приемов для ускорения работы циклов является векторизация вычислений, т. е. испо
Ускоряем код с помощью векторизации Одним из приемов для ускорения работы циклов является векторизация вычислений, т. е. использование функций, которые поддерживают операции над векторами. Вообще лучший способ ускорить любой цикл – это отказаться от него. В примере выше для работы с функцией my_func мы могли бы вызвать ее в цикле для каждого элемента списка, но гораздо проще использовать vectorize. По сути, vectorize преобразует функцию таким образом, что она начинает принимать весь вектор целиком, а не отдельный его элемент. Надо помнить, что такой подход не всегда приводит к значительному ускорению. Подписывайтесь на канал 👉@pythonofff

Получи грант до 1,2 млн руб. на обучение в магистратуре 4 офлайн программы, онлайн-магистратура по ML. Гранты до 1,2 млн руб.
Получи грант до 1,2 млн руб. на обучение в магистратуре 4 офлайн программы, онлайн-магистратура по ML. Гранты до 1,2 млн руб. Стажировки, диплом гос. образца и фокус на твоей карьере в ЦУ Подать заявку #реклама 16+ apply.centraluniversity.ru О рекламодателе

Запрос пароля у пользователя Множеству инструментов командной строки или скриптов для работы требуется имя пользователя и пар
Запрос пароля у пользователя Множеству инструментов командной строки или скриптов для работы требуется имя пользователя и пароль. Если вам придётся писать подобную программу – вы, возможно, сочтёте полезным модуль getpass. Этот очень простой пакет позволяет запрашивать у пользователя его пароль, а также получать имя пользователя, извлекая имя, под которым он вошёл в систему. Подписывайтесь на канал 👉@pythonofff

Не используйте обработку исключений слишком часто Обработка исключений может защитить вашу программу от внезапных сбоев. Тем
Не используйте обработку исключений слишком часто Обработка исключений может защитить вашу программу от внезапных сбоев. Тем не менее все прекрасно знают, что подобные конструкции могут заметно снизить производительность скрипта. Не стоит злоупотреблять try-except конструкциями, так как в большинстве случаев можно справиться с задачей, применяя обычные условия. Используйте обработку исключений только в крайних случаях. На картинке мы привели пример двух случаев необоснованного использования обработки исключений, а также показали более правильную альтернативу. Подписывайтесь на канал 👉@pythonofff

Онлайн-доски теперь в Битрикс24 Можно не только вести проекты и общаться по видео, но и визуализировать идеи вместе с командо
Онлайн-доски теперь в Битрикс24 Можно не только вести проекты и общаться по видео, но и визуализировать идеи вместе с командой. Бесплатно, удобно, без лишних движений. Стратегии больше не будут прежними. Зарегистрироваться #реклама 16+ bitrix24.ru О рекламодателе

Создание дочернего процесса Метод os.fork() создаёт дочерний процесс в том же месте кода, вызывая системную функцию fork(), и
Создание дочернего процесса Метод os.fork() создаёт дочерний процесс в том же месте кода, вызывая системную функцию fork(), и возвращает PID (Process Identifier), который равен PID дочернего процесса в родительском процессе и нулю в новом. Кстати, получается интересный случай, в коде примера выполняется и блок if, и else. Если не знать про os.fork() и посмотреть вывод подобного кода, то возникнет много вопросов. Подписывайтесь на канал 👉@pythonofff

Дескрипторы Дескриптор – это атрибут объекта со “связанным поведением”, то есть такой атрибут, при доступе к которому его пов
Дескрипторы Дескриптор – это атрибут объекта со “связанным поведением”, то есть такой атрибут, при доступе к которому его поведение переопределяется методом протокола дескриптора. Если хотя бы один из этих методов определен в объекте, то можно сказать, что этот метод – дескриптор. Для того, чтобы определить свой собственный дескриптор, обычно определяют три специальных метода класса __get__, __set__ или __delete__. После этого можно создать новый класс и в атрибут этого класса записать объект типа дескриптор. У данного объекта будет переопределено поведение при доступе к атрибуту (__get__), при присваивании значений (__set__) или при удалении (__delete__). Подписывайтесь на канал 👉@pythonofff

DBCV: low-code мультиагентная платформа Новинка! Заработай на цифровизации! Визуальный конструктор, ИИ агенты, трехуровневый API, приложения для любых платформ, python для супер-гибкости. Попробовать #реклама 16+ dbcv.ru О рекламодателе

Разница между __str__ и __repr__ Оба магических метода __str__ и __repr__ используются для получения строкового представления
Разница между __str__ и __repr__ Оба магических метода __str__ и __repr__ используются для получения строкового представления объекта. Давайте разберемся, в чем же собственно разница между ними. Метод __str__ используется для создания вывода для конечного пользователя, а __repr__ в основном используется для отладки и разработки. Другими словами, цель __repr__ – быть однозначным, а __str__ – читабельным. Функция print() и встроенная функция str() используют метод __str__ для отображения строкового представления объекта, а вот встроенная функция repr() использует для этого метод __repr__. Подписывайтесь на канал 👉@pythonofff

Геттеры и сеттеры В объектно-ориентированных языках распространено использование геттеров и сеттеров для безопасной работы с
Геттеры и сеттеры В объектно-ориентированных языках распространено использование геттеров и сеттеров для безопасной работы с приватными полями. Например, в C# для этого есть удобная конструкция { get; set; }. В Python геттер реализуется через декоратор @ property, а сеттер в виде @ свойство.setter. В примере метод геттера называется age, поэтому декоратор сеттера – @ age.setter. Оба метода должны иметь одинаковое название, по которому можно будет обращаться как к обычному атрибуту. Подписывайтесь на канал 👉@pythonofff

Получи грант на обучение в Центральном университете Центральный университет выдает гранты на 4 года обучения в бакалавриате.
Получи грант на обучение в Центральном университете Центральный университет выдает гранты на 4 года обучения в бакалавриате. Грант покрывает до 100% стоимости обучения. Участвуй в отборе, чтобы получить грант. Получи доступ к уникальным активностям для абитуриентов. Для выпускников 10-х, 11-х классов и колледжей. Подать заявку #реклама apply.centraluniversity.ru О рекламодателе

Наследование Наследование позволяет создавать новый класс на основе уже существующего. Таким образом, можно создать новый кла
Наследование Наследование позволяет создавать новый класс на основе уже существующего. Таким образом, можно создать новый класс, взяв за основу все методы и атрибуты другого. В данном случае класс Person является родительским классом, также его называют базовым классом или суперклассом. А класс Employee называется дочерним классом или подклассом. Наследование классов нужно для изменения поведения конкретного класса, а также для расширения его функционала. Подписывайтесь на канал 👉@pythonofff

Статические методы Отличие статического метода от обычного метода класса в том, что первый привязан к классу, а не объекту. Т
Статические методы Отличие статического метода от обычного метода класса в том, что первый привязан к классу, а не объекту. Такой тип методов по умолчанию не принимает ни объект, ни класс – прописывать self или cls в аргументах не нужно. То есть статические методы не могут модифицировать ни объект, ни сам класс. Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть. Подписывайтесь на канал 👉@pythonofff