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

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

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

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

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
«Библиотека программиста» ищет девушек, работающих в IT — разработке, тестировании, информационной безопасности и других направлениях

Мы проводим новое исследование, посвященное специфике работы женщин в IT — от сложностей и недостатков в работе до гендерных стереотипов.

Пройдите короткий опрос — он анонимный и займет не более 10 минут вашего времени.

Ссылка тут.
👍8
Паттерн проектирования «Фасад»

Паттерн проектирования «Фасад» (Facade) используется для предоставления унифицированного интерфейса к группе интерфейсов подсистемы. Он позволяет скрыть сложность и детали взаимодействия между различными компонентами системы, предоставляя клиенту более простой и удобный способ взаимодействия.
#код
👍234
Почему статические языки страдают от сложности

Чрезвычайно подробное и глубокое погружение в тему того, как статические системы типов влияют на согласованность языков. Автор сравнивает различные менее известные языки, чтобы увидеть последствия их решений. См. также соответствующее обсуждение на Hacker News.

Читать статью
😁10🤔1
Какой сетап вы используете?
#интерактив
👍11😁4
Цикломатическая сложность

Цикломатическая сложность (Cyclomatic Complexity) — это метрика, используемая для оценки сложности кода на основе количества путей выполнения в программе. Эта метрика была предложена Томасом МакКейбом в 1976 году и обычно используется для определения того, насколько сложно будет тестирование и сопровождение данного кода.

Целью расчета цикломатической сложности является выявление потенциально сложных участков кода, которые могут быть трудными для понимания, тестирования и поддержки. Более высокая цифра цикломатической сложности обычно указывает на большую сложность кода.
#код
👍163
Очередной #дайджест по Python:

🐍 Простая нейронная сеть без библиотек и матриц. Обучение с учителем
Автор простым языком описывает свой опыт создания нейросети.

🐍 Гиперпараметрический поиск и оптимизация моделей
При создании моделей машинного обучения существует одна важная составляющая, которая часто остается за кадром, но имеет решающее значение для достижения высокой производительности и точности — это гиперпараметры.

🐍 Как дообучить LLaMA бесплатно и без программирования: как создать тупого друга
В статье показано, как дообучить нейросеть на своих личных диалогах, чтобы создать виртуальную копию чьей-либо личности.

🐍 15+ небанальных ресурсов для начинающего/продолжающего Python-разработчика
Ссылки на не самые известные ресурсы, но довольно полезные.

🐍 Основы парсинга на Python: от Requests до Selenium
Как парсить данные веб-сайтов с помощью Python? Пособие подойдет новичкам и продолжающим.
👍10
Аннотация типов

Аннотации типов (type hints) позволяют указать ожидаемые типы аргументов функций и возвращаемых значений. Они были введены в Python 3.5.

Аннотации типов не проверяются во время выполнения кода. Это просто подсказки для разработчиков и инструментов статического анализа кода.

Поддерживаются встроенные типы (int, float, str, bool и т.д.), а также классы, списки, словари и кортежи с указанием типов внутри.

Для необязательных аргументов используется Optional[] (например, Optional[int]).
Для возвращения нескольких типов можно использовать Union (например, Union[int, str]).
#код
👍174
Как простой импорт может изменить интерпретатор

В этой статье показан пример модуля, который меняет местами значения 8 и 9, что обычно не рекомендуется. Узнайте, как побочные эффекты импорта могут повлиять на ваш код и что такое целочисленный кэш объектов.

Читать статью
👍1
Сортировка пузырьком

Сортировка пузырьком (Bubble Sort) — это простой алгоритм сортировки, который многократно проходит через список, сравнивая пары соседних элементов и меняя их местами, если они стоят в неправильном порядке. Этот процесс повторяется до тех пор, пока весь список не будет отсортирован.

В данном коде функция bubble_sort принимает список arr, который нужно отсортировать. Основной цикл проходит по всем элементам списка, а вложенный цикл сравнивает соседние элементы и меняет их местами, если это необходимо. После завершения алгоритма, список будет отсортирован.
#код
👍18
Напишите код, который будет рассчитывать угол между часовой и минутной стрелкой в заданное время

Данная задача проверяет логическое мышление кандидата, и то, как быстро он сможет придумать решение. Пример решения представлен на изображении.
#вопросы_с_собеседований
👍18🔥2
Cтатический метод

В Python статический метод (staticmethod) — это метод, который привязан к классу, а не к экземпляру этого класса. Он не требует доступа к атрибутам и методам экземпляра, и может быть вызван независимо от создания экземпляра класса. Статические методы могут использоваться, например, для выполнения операций, которые связаны с классом в целом, но не требуют доступа к данным экземпляра.

Чтобы определить статический метод в классе, используется декоратор @staticmethod.
#код
👍20
Тип данных list Python: глубокое погружение с примерами

В этом гайде автор предлагает углубиться в списки Python'а. Он описывает, как создавать их, обновлять их содержимое, заполнять и расширять их и многое другое. Попутно предлагаются практические примеры, которые помогаю укрепить навыки работы с этим фундаментальным типом данных в Python.

Читать статью
👍3👏1
🔥 Клеточный автомат на Python: "Жизнь"

Клеточный автомат — давняя 2D игрушка, действующая по некоторым правилам. Она тьюринг-полная, а значит с ней можно сделать что угодно.

Но первым делом её надо создать. Автор рассказывает как это сделать использую Python и pygame.

Смотреть видео
🔥61👍1
Очередной #дайджест по Python:

🐍 Обработка и анализ естественного языка с помощью Python-библиотеки spaCy
Библиотека spaCy выделяется своей эффективностью и производительностью. Она разработана с акцентом на скорость и точность, что делает ее предпочтительным выбором для многих разработчиков и исследователей в области NLP.

🐍 Django Rest Framework. Туториал или как легко писать backend
Автор учит новичков делать rest эндпоинты.

🐍 Как организовать отдачу статических файлов в контейнеризованном Django
Подробный ответ на часто задаваемый вопрос на курсе для мидлов.

🐍 Моделирование движения космических объектов (симулятор гравитации)
Создаем симулятор солнечной системы.

🐍 Что для меня значит быть программистом
Статья-мнение, собравшая внушительное количество лайков.
9👍4
Считаете ли вы, что в вашей компании уделяется слишком много времени на ненужные созвоны и мало времени на разработку?
#интерактив
11
Ищем копирайтера

Нам нужен человек, который:
— Любит IT и русский язык.
— Понимает разницу между бэкендом и фронтендом, OWASP и MISRA, функциональным программированием и ООП, микроконтроллером и миникомпьютером, UX и UI.
— Имеет опыт работы от 1 года.
— Будет плюсом, если вы программируете на каком-нибудь языке на уровне стажера/джуна.

Что нужно делать:
— Готовить подборки, ТОПы книг, ютуб- и телеграм-каналов по языкам программирования.
— Делать расшифровки топовых Ютуб-роликов по теме программирования и оформлять их в виде статей.
— Готовить новостные заметки.
— Актуализировать старые статьи.
— Брать интервью у экспертов. Мы поможем с поиском экспертов.
— Иногда писать небольшие рекламные посты в телеграм.
— Писать статьи с кодом, переводить статьи (по желанию, оплачивается отдельно).

Можно использовать нейронки?
— Да, главное, чтобы материал получился интересный.

Условия:
— Белая зарплата: 50 000 руб.
— Возможность работать удаленно.

👉Присылайте свои резюме: [email protected]
11
🔍Насколько легко «войти в айти»?

IT — перспективная отрасль с высокими зарплатами и огромной конкуренцией. Собираем ваши истории: расскажите, как вам удалось сменить профессию (или сразу найти себя), какие шаги вы для этого предприняли и с какими сложностями пришлось столкнуться.

👉Пройдите наш 10-минутный опрос по ссылке.
11
Узнаем время года с помощью Python

Для определения времени года можно использовать текущий месяц и сопоставить его с нужным временем года.

В этом примере мы используем модуль datetime для получения текущей даты и времени. Затем мы сравниваем текущий месяц с нужными месяцами для каждого времени года и определяем соответствующий сезон.
#код
17👍12🤯4👏1
Что значит *args, **kwargs? И зачем нам их использовать?

Мы используем *args, когда не уверены, сколько аргументов будет передано функции, или если хотим передать сохраненный список или кортеж аргументов функции.

**kwargs используется, когда мы не знаем, сколько аргументов ключевых слов будет передано, а также он может быть использован для передачи значений словаря в качестве аргументов ключевых слов. Идентификаторы args и kwargs необязательны, вы можете изменить их на другие, типа *другой **пример, но лучше использовать имя по умолчанию.
#вопросы_с_собеседований
👍3111👏1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🐛 9 признаков неопытного программиста

Давайте попробуем отделить зерна от плевел и вывести несколько общих признаков, по которым можно определить неопытного программиста.

🔗 Читать статью
🔗 Зеркало
14🤯4👍1