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

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

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

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

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
💤 Функция sleep(): что это и для чего нужна

Иногда необходимо, чтобы код, написанный на Python, выполнялся не сразу, а мог «подождать» какое-то время. Например, вам нужна задержка, чтобы успел скачаться какой-то файл. Или необходимы паузы между вызовами API или запросами к базе данных.

💡Для решения этих задач можно пользоваться функцией sleep(), которая приостанавливает выполнение вызывающего потока. Как это сделать?

☑️ Использовать sleep() из модуля time.
import time
time.sleep(3) # будет "спать" 3 секунды


☑️ Использовать с asyncio.
Позволяет вызывать sleep() асинхронно.
import asyncio

async def main():
print('Hello ...')
await asyncio.sleep(1)
print('... World!')

# Python 3.7+
asyncio.run(main())
👍18🔥43
🧑‍💻 Парень сделал Telegram-бота для массовых откликов на вакансии. Вот что у него вышло

Свою историю он рассказал на «Хабре». Парень использовал HeadHunter API. В нём есть метод отклика на вакансии. Автору сразу пришла в голову идея создать бота для отправки сотен откликов за пару минут.

▶️ Во-первых, он увидел, что у метода есть ограничения: можно отправить максимум 200 откликов в день. Во-вторых, оказалось, что автоматизация откликов плохо работает на успех. Из более чем 1000 откликов парень получил более 500 автоотказов, приглашения без результата, десятки переносов вакансий в архив, 4-5 тестовых. Остальные были не просмотрены.

Эксперимент расстроил автора: он удивился, что найти работу настолько тяжело.
👍20😁6🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
👆Python-разработчики, если бы установка зависимостей оплачивалась отдельно👆

#memes
😁33👍6🥱2👾1
💬 А как вы относитесь к платным курсам по программированию?

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

А проходили ли вы платные курсы? Нашли ли вы работу после этого? Делитесь в комментариях

❤️ — проходил платные курсы, они оказались мне полезны, у меня нет претензий
👾 — проходил платные курсы, в целом нормально, но цена кажется слишком высокой за такие материалы
🤔 — проходил платные курсы, они оказались совсем бесполезны
👍 — учился только по бесплатным материалам

#интерактив
👍12254👾28🤔6😁1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🐱🎨🙏🤖 10 самых странных языков программирования, о которых вы никогда не слышали

Эзотерические языки разрабатывают в концептуальных, экспериментальных и развлекательных целях. Их общая черта — максимально запутанный и странный синтаксис, понятный только посвященным. В этой подборке — языки, которые выбрали бы Ходор, доктор Лектер, Малевич, Джеймс Бонд, Терминатор и Луи Армстронг, если бы решили войти в айти.

👉 Читать статью
👉 Зеркало
👍8
🧑‍💻 Свежий #дайджест по Python

🐍 Как перевести Django-сайт на разные языки: плюсы, минусы, подводные камни
Статья рассказывает о том, можно ли пользоваться стандартным решением для перевода Django.
🐍 Python Monorepo Visualization
Статья посвящена визуализации монорепозиториев в Python с использованием архитектуры Polylith.
🐍 Создание Chat-Ops бота в Mattermost на Python
Автор делится опытом разработки бота, предназначенного для автоматизации задач в команде, занимающейся электронным документооборотом.
🐍 AutoLove: апдейты девушке с YandexGPT
Статья на Хабре рассказывает о разработке автоматизированного бота в Telegram, который использует YandexGPT для отправки сообщений автора его девушке.
🐍 Python's Requests Library (Guide)
Хороший туториал от RealPython по библиотеке Requests (must-have для большинства разработчиков).
👍73
🧹Вышла первая стабильная версия линтера Ruff

Авторы называют его экстремально быстрым, так как он написан на Rust. На днях они представили его версию Ruff 0.3.0.

Из нового в последней версии:
▪️Style guide, который делает форматирование наиболее похожим на форматирование Black.
▪️Улучшенная поддержка частичного форматирования. Например, позволяет отформатировать не весь файл, а только определённые строки.
▪️Автоматическое форматирование плейсхолдеров внутри f-строк.

Установка — pip install --upgrade ruff
👍8
🧠 Знания — сила! Что должен изучить каждый программист?

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

Мы проанализируем ваши ответы и составим ТОП-лист навыков, которые не помешает освоить каждому программисту и разработчику для успешного карьерного роста!

👉 Пройти опрос
👍32
🧮📐 15 гениев, которые изменили мир математики навсегда

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

🔗 Читать статью
🔗 Зеркало
👍135🎉3
Что такое асинхронность в Python?

👉 Асинхронность — это парадигма программирования, которая позволяет выполнять несколько задач одновременно, не дожидаясь завершения каждой из них. В отличие от многопоточности, где задачи физически выполняются параллельно на разных процессорах или ядрах, асинхронное программирование позволяет задачам «переключаться» в рамках одного потока.

☑️ В Python асинхронность была стандартизирована сравнительно недавно. Чаще всего для асинхронных операций в Python используют asyncio. В основе лежит понятие coroutine — специальнае функция, выполнение которой может быть приостановлено и возобновлено позже, что позволяет выполнять другие задачи во время ожидания. Вот, например, функция-корутина, которая выполняет ожидание в течение некоторого времени:
import asyncio 

@asyncio.coroutine
def my_coroutine(seconds):
print ('Starting coroutine')
yield from asyncio.sleep(seconds)
print ('Finishing coroutine')
loop = asyncio.get_event_loop ()
loop.run_until_complete(my_coroutine (2))
loop.close ()


Async/await — это синтаксический сахар для работы с корутинами. await используется для вызова асинхронных функций и ожидания их выполнения.
import asyncio

async def my_async_function(seconds):
print('Starting async function')
await asyncio.sleep(seconds)
print('Finishing async function')

asyncio.run(my_async_function(2))


#вопросы_с_собеседований
👍182🔥2🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
🌼 Мартовские обновления Python в Visual Studio Code

Microsoft представила нововведения в расширениях Python и Jupyter для своей IDE.

🌷В автоматизированном исправлении ошибок импорта появилась дополнительная опция — Search for additional import matches, которая позволяет найти именно тот модуль, который нужен.
🌷Теперь браузер автоматически открывается, когда вы запускаете дебаггер с Django или Flask приложениями.
🌷Добавлена интеграция оболочки для интерпретатора Python (REPL) на Mac, Linux и Windows. При выполнении команд в REPL цветные круглые индикаторы будут показывать, успешно выполнена команда или нет.

🔗 Прочесть об изменениях подробнее можно здесь
👍11🥱31