python_practics
5.29K subscribers
1.85K photos
205 videos
119 files
59 links
Python - обучающие материалы, полезные советы и статьи.

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/python_practics
Download Telegram
Внимание! - Вопрос!

В чем отличие copy() от deepcopy()?

Глубокая копия deepcopy() создает новую и отдельную копию всего объекта или списка со своим уникальным адресом памяти. Это означает, что любые изменения, внесенные вами в новую копию объекта или списка, не будут отражаться в исходной. Этот процесс происходит следующим образом: сначала создается новый список или объект, а затем рекурсивно копируются все элементы из исходного в новый.

Поверхностное копирование copy() также создает отдельный новый объект или список, но вместо копирования дочерних элементов в новый объект оно просто копирует ссылки на их адреса памяти. Следовательно, если вы сделаете изменение в исходном объекте, оно будет отражено в скопированном объекте, и наоборот. Короче говоря, обе копии зависят друг от друга.


#вопросы_из_собеседований

@python_practics
👍121
Ray

Фреймворк Ray, разработанный группой исследователей из Калифорнийского университета в Беркли, лежит в основе ряда популярных распределенных библиотек машинного обучения. Но его применение не ограничивается только задачами машинного обучения. С помощью Ray можно разбить и распределить по системам фактически любые задачи для Python.

Синтаксис Ray минимален, поэтому распараллелить существующие приложения можно без лишних усилий. Декоратор @ray.remote распределяет эту функцию по любым доступным узлам в кластере Ray с необязательными параметрами, указывающими, сколько процессоров, в том числе графических, нужно использовать.

Результаты каждой распределенной функции возвращаются в виде объектов Python, поэтому ими легко управлять и хранить, а объем копирования между узлами или внутри них сведен к минимуму. Последнее будет очень полезно, например, при работе с массивами NumPy.

Подробнее👇

#фреймворки_библиотеки

@python_practics
👍2🔥1
Получите тексты песен

Этот продвинутый скрипт покажет вам, как получить текст любой песни. Сначала вы должны получить бесплатный API-ключ на сайте Lyricsgenius, а затем выполнить следующий код.

👍 - если было полезно

#полезные_сниппеты

@python_practics
👍13
Способы обхода GIL для повышения производительности

Global Interpreter Lock в Питоне предотвращает одновременное выполнение нескольких потоков в одном процессе интерпретатора Python. Т.е даже на многоядерном процессоре многопоточные Python-приложения будут выполняться только в одном потоке за раз. Это было введено для некой потокобезопасности при работе с объектами Python, упрощая тем самым разработку на уровне интерпретатора.

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

В этой статье автор рассмотрел способы обхода GIL.

Подробнее👇

#статьи

@python_practics
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Предлагаю в комментариях собрать свой словарь программистского сленга👇

#мемчики

@python_practics
🔥6
GPT-3. Руководство по использованию API OpenAI

Чему вы научитесь:

• Основам работы с API OpenAI для доступа к модели GPT-3;
• Форматированию и отправке запросов к API для получения текстовых ответов от модели;
• Использованию различных параметров запроса для настройки работы модели, таких как температура, максимальная длина ответа и прочие;
• Обработке и интерпретации ответов от модели GPT-3;
• Реализации различных приложений и сервисов, использующих API GPT-3 для генерации текста.

Эта книга предназначена для разработчиков, исследователей и всех, кто интересуется использованием и применением модели GPT-3 в своих проектах.

Книга в формате pdf👇

#курсы_книги

@python_practics
👍2
Ставь 👍 если было полезно

#теория_python

@python_practics
👍12
С помощью какой функции можно вызвать метод из родительского класса python?
Anonymous Quiz
59%
super()
33%
self()
8%
meth()
🔥7
Мониторинг Celery

Существует популярный подход к покрытию метриками Celery: он заключается в запуске некоторого процесса, который слушает события из специальной очереди, на основе этих событий обновляются объекты метрик, а фоновый поток сервера отдаёт собранные метрики скраперу. В этой статье автор подробно разобрал события, их жизненный цикл, откуда и как их принимать. Также рассмотрел механизм удалённого управления (remote control), какие у него есть возможности и как им пользоваться. Обсудил существующие решения, чем они отличаются, и почему вам, возможно, будет выгодно сделать своё.

Подробнее👇

#статьи

@python_practics
👍2
Внимание! - Вопрос!

Что такое интроспекция?

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

#вопросы_из_собеседований

@python_practics
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Игровой автомат на модуле turtle

Полный код можно посмотреть по ссылке👇

#sandbox

@python_practics
👍3👎1
Задача:

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

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

Пример:

   [] --> []
["a", "b", "c"] --> ["1: a", "2: b", "3: c"]


#задачник

@python_practics
👍3👎1
Получение данных Exif для фотографий

Используйте модуль Python Pillow для получения Exif-данных любой фотографии.

👍 - если было полезно

#полезные_сниппеты

@python_practics
👍9
Ставь 👍 если было полезно

#теория_python

@python_practics
👍25