Библиотека питониста | 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
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🐛🦋 Свитчеры после 30 лет: кто это, почему их не любят эйчары и как им найти работу в IT

Объясняем, как выжить тем, кто решил вкатиться в мир программирования после 30 лет.

🔗 Читать статью
🔗 Зеркало
🤩5
Напишите функцию на Python, которая принимает на вход список чисел и возвращает наибольшую возрастающую подпоследовательность (непоследовательные числа, идущие в порядке возрастания) из исходного списка

Для решения этой задачи используется динамическое программирование. Мы создаем массив dp, где dp[i] представляет собой длину наибольшей возрастающей подпоследовательности, заканчивающейся в nums[i]. Затем мы выполняем двойной цикл, чтобы найти наибольшую длину для каждого элемента. После этого мы определяем саму подпоследовательность, начиная с наибольшей длины и двигаясь обратно по массиву dp.

Пример использования:
python
nums = [3, 12, 5, 8, 10, 2, 1]
result = longest_increasing_subsequence(nums)
print(result) # Output: [3, 5, 8, 10]

Эта функция найдет наибольшую возрастающую подпоследовательность из списка [3, 12, 5, 8, 10, 2, 1], которой будет [3, 5, 8, 10], и выведет ее в консоль.
#вопросы_с_собеседований
1👍1
✍️«Библиотека программиста» собирает кейсы использования нейросетей

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

Заполняйте форму — лучшие истории появятся в нашей подборке по теме.

👉Ссылка тут👈
Как работает thread locals?

Thread-local storage обеспечивает механизм для сохранения данных, которые будут доступны только в рамках определенного потока выполнения. Это полезно, когда вы хотите иметь раздельные данные для каждого потока, но не хотите делить их между разными потоками.

Вы можете использовать класс threading.local(), чтобы создать объект, который будет представлять thread-local storage. В этом объекте вы можете хранить любые данные, и они будут видимы только для текущего потока. Каждый поток будет иметь свою собственную копию объекта threading.local().
#код
👍2
NP-трудные задачи: почему их плохо решают

Уже сегодня в 19:00 мск!

Регистрируйтесь, чтобы получить приглашение на все вебинары в августе – https://proglib.io/w/d4d5a21b

Или подписывайтесь на канал академии, ссылка на трансляцию будет там – https://t.iss.one/proglib_academy

Спикер: Дмитрий Коротенко | эксперт в области анализа данных, Ex-ML specialist at Yandex, Ex-BusDev at Alfa Bank

На вебинаре обсудим:

▪️ Понятие NP-трудных задач

▪️ Реальные примеры NP-трудных задач

▪️ Экзотические задачи, связанные с числами Рамсея

▪️ Переход от постановки задачи к программированию

Подробностиhttps://proglib.io/w/d4d5a21b
1🔥1
Шпаргалка по Matplotlib

Matplotlib — библиотека на языке программирования Python для визуализации данных двумерной и трёхмерной графикой.
👍312🔥1
Очередной #дайджест по Python:

🐍 Работа с SQLite в Python (для чайников)
В статье раскрываются все основные аспекты использования SQLite, начиная с установки и создания базы данных, и заканчивая выполнением сложных запросов и управлением транзакциями.

🐍 Обучение YOLOv8s на Google Colab: детектим дорожные знаки
Учимся детектить дорожные знаки, используя YOLOv8.

🐍 Просто добавь команд: как реализовать диалоговый Телеграм бот на основе шаблона
Как быстро создать инфраструктуру для диалогового бота на основе Yandex Serverless Functions и базы данных YDB.

🐍 Разработка событийно-ориентированных микросервисов с помощью Python
О нюансах разработки событийно-ориентированных микросервисов на Python.

🐍 Из пет-проекта в источник дохода: как я создал чат-бот для поиска вакансий
Рассказ о техническом устройстве бота и не только.
9👍8
Какое мероприятие по разработке вы посещали последним и будете ли на нем в следующий раз?
#интерактив

Кстати, на нашем сайте есть раздел с анонсами мероприятий по программированию.
👍53
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы

☕️Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🧠C++

Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека шарписта
Библиотека Go разработчика
Библиотека мобильного разработчика
Библиотека хакера
Библиотека питониста
Библиотека devops’a
Библиотека тестировщика
Библиотека пхпшника

💼Каналы с вакансиями

Вакансии по питону, Django, Flask
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии по C#, .NET, Unity
Вакансии по Go
Вакансии по PHP, Symfony, Laravel
Вакансии по DevOps & SRE
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
10👍6😁1🤔1🤯1
«Библиотека программиста» в поиске контент-менеджера для ведения телеграм-каналов

Ищем человека, который грамотно пишет, разбирается в контенте и в одной из этих трех тем:
👉Data Science
👉Frontend
👉мобильная разработка

Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴

Подробнее о вакансии и форма для отклика — по ссылке.

Ждем вас в команде!
7👍2🤩2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🔤 Промпт-инжиниринг: как правильно писать запросы нейросетям

Разберём, что же такое промпт-инжиниринг и как научиться писать качественные запросы для языковых моделей.

🔗 Читать статью
🔗 Зеркало
10🤔3👍2
Что такое дескрипторы?

Дескрипторы — это механизм, который позволяет контролировать доступ к атрибутам классов. Они предоставляют способ определения специальных методов для доступа, присваивания и удаления атрибутов. Дескрипторы часто используются для реализации логики, связанной с доступом к данным, внутри классов.

Для создания дескриптора нужно определить класс, который реализует хотя бы один из трех вышеуказанных методов. Затем экземпляры этого класса могут быть присвоены атрибутам других классов.
#вопросы_с_собеседований
👍279
«Библиотека программиста» ищет девушек, работающих в 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