Библиотека питониста | Python, Django, Flask
40.4K subscribers
2.79K photos
75 videos
51 files
4.37K links
Все самое полезное для питониста в одном канале.

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

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

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

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
加入频道
Одинарные и двойные подчёркивания в именах Python

В Python есть несколько важных соглашений об именовании, касающихся использования одинарного или двойного подчёркивания (_).

Например, в Python приватные и защищённые методы классов реализованы лишь на уровне договорённостей между разработчиками. Так, перед приватными методами нужно писать двойное нижнее подчёркивание, а перед защищёнными — одно.

Есть и другие соглашения. Прочесть обо всех подробнее можно в этой статье 👈
10👍6🔥1
🐍🤓 Одна из самых подробных шпаргалок по Python

Тут на GitHub создали репозиторий с большим гайдом по языку Python. Куча примеров кода в README.md, а также инструкция, как сделать из этого PDF.

В шпаргалке:
✍️ типы данных;
✍️ функции и классы;
✍️ обработка исключений;
✍️ работа с разными форматами данных;
✍️ корутины и многое другое.

🔗 Ссылка на шпаргалку
16👍13👏3🥰2
Мы запускаем серию исследований — и вы можете нам в этом помочь!

«Библиотека программиста» выпустит несколько статей, в которых мы проведем полноценные исследования.

Помогите нам выбрать интересные темы: может быть, вы давно хотели узнать, как изменилась зарплата у тех, кто релоцировался? Или гадаете, сколько лет нужно, чтобы стать миддлом?

Присылайте интересующие вас темы в комментарии — интересные мы возьмем в работу и поделимся с вами результатами 💙
👍10
🎄 Новогодний челлендж для всех любителей порешать задачки — стартовал очередной Advent of Code

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

P.S.: авторы просят не использовать ChatGPT

👉 Попробовать решить первую задачу
👍92
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🏆 Самые популярные языки программирования 2023

Популярность ЯП зависит от нескольких факторов. Мы разобрались с ними, составили сводный рейтинг и обсудили особенности, преимущества, недостатки и причины популярности каждого языка. Заходите и читайте👇

🔗 Читать статью
🔗 Зеркало
🔥4👍1
🐰 Небольшая пасхалка в Python

Если попытаться передать методу float() строку 'infinity' или 'inf' (к регистру нечувствительно), то код сработает без ошибок и мы получим объект inf. Если затем применить к этому объекту hash(), то результатом будет «314159».

Узнали, что это? Да, это знаменитая последовательность из числа Пи (π ≈ 3.14159...). Пи имеет бесконечное количество цифр после точки.

🐍 Если любопытно, можете изучить источник этой пасхалки в CPython
🤯22🔥11🥰32😁2🤔2👍1
📰 10 признаков фейковой вакансии

Как понять, что с вакансией что-то не так? Разбираемся в этой статье!

Читать статью

#почитать
👍113🔥1👏1
📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих»

Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!

🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
🔥27👍76
This media is not supported in your browser
VIEW IN TELEGRAM
😜 Библиотека MegaMock для тестирования Python-кода

Позволяет быстро писать тесты с использованием mock-объектов (заглушек или имитаций).

Несколько преимуществ библиотеки:
✔️автоматически создаёт имитации с использованием лучших практик;
✔️при патчинге принимает на вход не текстовую строку, а объект или функцию.
✔️у проекта есть собственный GPT, которому можно задавать вопросы по библиотеке или просить его сгенерировать тесты.

🧑‍💻 Репозиторий MegaMock на GitHub со всеми подробностями
👍82🔥2
💎Что такое алмазная проблема (Diamond problem) и как она решается в Python

Эта проблема также известна как ромбовидное наследование и связана с поддержкой языком множественного наследования.

🔷Допустим, у нас есть два класса B и C. Они наследуют от класса A. Также мы создаём класс D, который наследует от обоих классов B и C. Тут и может возникнуть неоднозначность. Если классы B и C по-своему переопределили некоторый метод родительского класса A, то от какого класса этот метод будет унаследован в D?

В Python с проблемой справились введением MRO, порядка разрешения методов. У класса можно вызвать функцию .mro() и увидеть список, в котором классы представлены в том порядке, в каком в них будет искаться нужный метод при вызове. Почитать об этом подробнее можно на Python.org
👍173👏2🤔2
💬 Там Python Software Foundation приглашает поучаствовать в официальном опросе Python-разработчиков

Опрос проводят каждый год. Чтобы его пройти, потребуется 10-15 минут. Также JetBrains и Python Software Foundation случайным образом выберут 20 человек, которым вручат подарочную карту Amazon (или локальный аналог) на сумму $100.

🐍Пройти опрос (можно выбрать русский язык)
👍10🔥4👏2
📖 Исчерпывающее руководство по сериализации данных в Python

Понимание сериализации данных пригодится и дата-сайентисту, обрабатывающему большие данные, и бэкендеру, создающему масштабируемые микросервисы, и фронтендеру, использующему веб-API.

Если коротко, сериализация — это способ преобразования структуры данных в форму, которую можно сохранить или передать по сети.

Есть множество форматов сериализации данных:
▪️Текстовые: CSV, JSON, XML, YAML. Могут читаться как людьми, так и машинами, но при этом довольно грузные и медленно работают с большими объёмами данных.
▪️Бинарные: Avro, BSON, Parquet, Protocol Buffers. Быстрые, но читаются только машинами.

О том, как выбрать подходящий формат, и как с ним работать, можно прочесть в новой статье на Real Python
👍12
🔥 Вышел Django 5.0

Из нового:
✔️Параметр db_default для значений по умолчанию, устанавливающий их на уровне базы данных.
class MyModel(models.Model):
age = models.IntegerField(db_default=18)
created = models.DateTimeField(db_default=Now())
circumference = models.FloatField(db_default=2 * Pi())

✔️Класс GeneratedField, позволяющий создавать поля моделей, значения которых генерируются и вычисляются на уровне базы данных.
class Square(models.Model):
side = models.IntegerField()
area = models.GeneratedField(
expression=F(«side») * F(«side»),
output_field=models.BigIntegerField(),
db_persist=True,
)

✔️Упрощён рендеринг параметров полей формы (например, label и widget).

🔗Изучить Django 5.0 подробнее можно здесь
23🔥5👏2😁1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🔤 Азбука SQL в примерах. Часть 1. Создаем базу данных и первую таблицу

С помощью этого короткого руководства в трех частях вы создадите базу данных, добавите в неё записи, а затем выполните несколько запросов для их обработки. В первой части мы узнаем, что скрывается за тремя буквами SQL и начнем двигаться к поставленной цели.

🔗 Читать статью
🔗 Зеркало
👍7🔥43👏1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
📯Внимание всем отважным героям и искателям приключений!

«Библиотеки Программиста» с гордостью представляет новую захватывающую игру — «Битва с Драконом». Выберите своих персонажей и сразитесь с древним Крылатым Ужасом Бурлопиворогом в эпическом поединке!

Мы предлагаем вам взять под свой контроль хитроумного изобретателя или ловкого вора.

💎Победителей ждет почет, уважение и награда! Итак, кто осмелится бросить вызов Бурлопиворогу? Начните свою «Битву с Драконом»!
🔥5👍1🤯1🤩1
Что выведет код с картинки выше?
Anonymous Quiz
11%
False True
63%
True True
16%
True False
10%
False False
5
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍4🔥31
📖Модуль difflib для сравнения последовательностей

Особенно полезен для работы с текстами. Содержит функции для создания отчётов в нескольких распространённых форматах, в том числе в HTML.

▪️Класс Differ(), например, выводит различия в отдельных строках, сопровождая их префиксами.
▪️Класс SequenceMatcher() позволяет вычислить сходство между строками. Функция get_opcodes() возвращает список инструкций для приведения первой последовательности к виду второй.

Таким образом, difflib полезен в ситуациях, когда нужно определить не только факт различия между двумя последовательностями, но и конкретные места, где эти различия возникают.

#код
👍213
Курсы для тех, кто хочет получить новые скиллы или перейти в другую компанию на грейд выше.

У вас есть возможность начать любой курс с бесплатных вводных занятий, чтобы познакомиться с преподавателями и форматом обучения.

Какой курс выбрать?


🔹 Математика для Data Science

Наш cамый популярный, самый хардкорный курс по вышмату! На этом курсе вы получите все необходимые знания по математике для старта карьеры в DS или аналитике.

🔹 Алгоритмы и структуры данных

Курс, который на практике познакомит со сложными алгоритмами и научит писать более короткий и эффективный код.

🔹 Основы программирования на Python

Если вы только хотите начать свою карьеру в IT, то этот курс точно для вас. Вы сможете получить новую профессию за 13 990 рублей, поймете, насколько вам подходит работа с кодом.

Если вы не знаете, какой курс вам подойдет, оставляйте заявку, и наш менеджер поможет с этим и любым другим вопросом – https://proglib.io/w/a55e0cd5
👍2
🔤 Азбука SQL в примерах. Часть 2. Ограничения, которые упрощают жизнь

В предыдущей части мы выяснили, что такое SQL, создали свою первую базу данных и добавили в неё первую таблицу. Пришло время узнать, как сделать добавление данных в неё более простым и надёжным.

🔗 Читать статью
🔗 Зеркало
👍64🔥2