Библиотека питониста | Python, Django, Flask
40.3K subscribers
2.81K photos
79 videos
51 files
4.4K links
Все самое полезное для питониста в одном канале.

Список наших каналов: https://t.me/proglibrary/9197

Курс по ML: https://cl

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
🧍‍♂️🧍🧍‍♀️ Как реализовать очередь в Python

Очереди (Queues) — одна из структур данных, используемая для хранения коллекций элементов в порядке first-in, first-out (FIFO). Всё, как в настоящей очереди, — кто первым вошёл, то раньше всех и вышел.

В Python очереди можно реализовать с помощью класса deque() из модуля collections или модуля queue.

🧍‍♀️Чтобы добавить элементы в очередь: в deque используем метод append(), в Queue — put()
🧍Чтобы удалить элементы из очереди: в deque — метод popleft(), в Queue — get()
🧍‍♂️Чтобы проверить размер очереди, используем len()

Стоит отметить, что queue.Queue предназначен для многопоточного программирования.

#код
👍272
🧑‍💻 Что делает функция takewhile() модуля itertools

Функция создаёт итератор, возвращающий элементы из итерируемого объекта до тех пор, пока указанное условие истинно (True или 1). Как только условие становится ложным, итератор прекращает свою работу и больше не возвращает элементы.

В примере takewhile будет возвращать элементы из списка my_list, пока они меньше пяти. Как только встретится элемент, равный или больший пяти, работа прекратится.

#код
👍263👏2🤔1
🔥 Библиотека Humanize для простого преобразования числовых данных в удобный для человека вид

Например, dt.timedelta(seconds=3) можно одной строчкой преобразовать в «3 секунды назад» или 1_000_000 в «976.6 KiB» . Библиотека поддерживает русский и ещё 27 языков.

🕚 Установка — pip install humanize

Страница на PyPI
👍14
Продолжаем изучать модуль itertools. Сегодня — функция starmap()

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

🌟 Таким образом, starmap() можно использовать вместо map(), если данные были предварительно упакованы в кортежи.

В примере starmap() позволяет вычислить квадраты чисел в кортежах в списке и сложить их.

#код
👍24🥰2
Новый #дайджест по Python:

🐍 JupyterLab для расширения возможностей Notebook
Подробный гайд по JupyterLab — интерактивной среде разработки для работы с Jupyter-блокнотами, кодом и данными.
🐍 Обработка результатов статистических наблюдений с помощью толерантных интервалов
Подробная статья с формулами, графиками и кодом.
🐍 Практический гайд по процессам и потокам (и не только) в Python
Рассказывает также о Global Interpreter Lock, CPU и I/O bound нагрузке, пользе от ThreadPool и ProcessPool.
🐍 Добавляем DALL-E 3 в свой ChatGPT бот в Telegram
Простой туториал для новичков.
2👍1🔥1
Как вам кажется, нормально ли приукрашивать свой опыт при поиске работы?

🔥 — делаю так, ничего плохого в этом не вижу
👍 — ну, иногда можно немного приврать
❤️ — я лучше буду честным перед работодателем

#холивар
👍11464🔥12👏1
🐍🎨 Генерация красивых QR-кодов с помощью Python

С помощью этого руководства вы узнаете, как использовать Python и библиотеку Segno для создания красивых QR-кодов.

Читать статью
🔥19
Можно ли осуществить динамическую загрузку модуля в Python?

Чтобы загружать модули динамически, т.е. во время выполнения программы, используется функция importlib.import_module()

В этом примере мы импортируем модуль importlib и используем его функцию import_module() для динамической загрузки модуля math. Затем мы используем функцию sqrt() из загруженного модуля.

Динамическая загрузка модуля может быть полезна, например, если вы хотите загрузить модуль в зависимости от каких-то условий, которые определяются во время выполнения программы. Такой подход — медленный, но он помогает эффективнее использовать память.
15👍5👏4
🪄 Библиотека Gooey — для быстрого превращения консольной Python-программы в графическое приложение

Gooey добавляется в код через декоратор к тому методу, в котором находятся объявления argparse. В результате при запуске скрипта открывается простой графический интерфейс пользователя.

Установка — pip install Gooey

🧑‍💻 Репозиторий с подробной инструкцией
🌟 Репозиторий с примерами консольных программ
👍32👏21
👓 Задача: Дан непустой список с целыми числами, каждый элемент которого, кроме одного, повторяется дважды. Нужно найти этот единственный элемент.

Предлагается решение через использование оператора «^» — побитового XOR (исключающее ИЛИ).

Подробное объяснение в видео

#код
🔥19👍7👏1
This media is not supported in your browser
VIEW IN TELEGRAM
💅 Красивое логирование с библиотекой robocorp-tasks

Библиотека создаёт html-файл, который в визуально приятной и хорошо структурированной форме показывает все логи. Для настройки такого отображения нужно добавить в скрипт декораторы @task.

Установка — pip install robocorp-tasks

🧑‍💻Репозиторий с инструкцией
👍9🥰83
🔈16+ лучших нейронок для синтеза речи

Предлагаем подборку платных, бесплатных и опенсорсных инструментов для озвучивания текста, клонирования голоса и дублированного перевода подкастов и видео.

Читать статью
5👍5