Библиотека питониста | Python, Django, Flask
41.6K subscribers
2.53K photos
69 videos
51 files
4.1K links
Все самое полезное для питониста в одном канале.

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

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
🐍 Самоучитель по Python для начинающих. Часть 19: Основы ООП – абстракция и полиморфизм

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

🔗 Основной сайт
🔗 Зеркало
📈 Повышение цен с 28 апреля на 4 курса!

Если вы планировали покупку курса, рекомендуем сейчас оставить заявку и задать все оставшиеся вопросы менеджеру, чтобы успеть оплатить обучение до повышения цены.

Старая цена будет действовать до 28 апреля включительно — и при оплате целиком, и в рассрочку.

🔹Математика для Data Science
24 990 руб. → 39 990 руб.

🔹Алгоритмы и структуры данных
19 990 руб. → 35 980 руб.

🔹Основы программирования на Python
9 990 руб. → 19 980 руб.

🔹Frontend Basic: принцип работы современного веба
29 990 руб. → 39 990 руб.

Главное про обучение у нас


1. Лучший преподавательский состав. К примеру, высшую математику вам будут преподавать доценты ВМК МГУ;

2. Бессрочный доступ ко всем материалам. Вы сможете проходить обучение в своем темпе;

3. Поддержка преподавателей в чате. Вам всегда помогут разобраться в сложной теме и ответят на любые вопросы;

4. Мы возвращаем деньги, если в течение 7 дней вам не понравилось обучение.

👉Оставить заявку на консультацию можно здесь https://proglib.io/w/639f76cc
Сортировка данных CSV файла на Python 🐍

В этом коде мы открываем файл input.csv, считываем его содержимое в список data, сортируем список по первому столбцу и записываем отсортированные данные в новый файл output.csv.
Метод partition()

Метод partition() разбивает строку по заданной подстроке. После этого результат возвращается в виде кортежа. При этом подстрока, по которой осуществлялась разбивка, тоже входит в кортеж.
#вопросы_с_собеседований
Что такое wheel и eggs в Python? Какая между ними разница?

Python wheel
- Это стандартный формат установки дистрибутивов Python, который содержит все файлы и метаданные, необходимые для установки. Файл WHL также содержит информацию о версиях и платформах Python, поддерживаемых этим файлом. Расширение файла wheel - .whl

Python egg - Это сжатый архив ZIP, содержащий исходные файлы приложения Python вместе с метаинформацией о дистрибутиве. Расширение файла egg - .egg

Основная разница заключается в том, что wheel предоставляет более простой и надежный способ установки пакетов. В отличие от eggs, он не требует установки дополнительных зависимостей и обеспечивает более быстрое время установки. Кроме того, wheel поддерживает все платформы, на которых может работать Python.
Встроенная функция help()

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

Отложите все дела и забудьте о рутине, ведь майские праздники уже на пороге! Если вы не знаете, как провести эти дни с максимальным удовольствием, то мы подготовили для вас несколько вариантов: киномарафон, компьютерные игры и захватывающий мир алгоритмов.

🔗 Основной сайт
🔗 Зеркало
Назад в будущее: практическое руководство по путешествию во времени с Python

В Python есть несколько встроенных библиотек для работы со временем и интервалами времени: time, datatime, calendar, timeit. Но когда какой модуль использовать? Рассмотрим на примерах.

Смотреть статью
Инкремент с помощью __pos__

В Python нет операции инкремента ++ как в си-подобных языках, поэтому используется x += 1. Однако запись ++x является валидным кодом (но не x++), так как это просто два унарных оператора сложения.

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

Код на картинке может показаться сначала немного сложным, но лучше проследить логику и понять работу метода __pos__. Если реализовать все остальные необходимые магические методы, то может получится полноценный класс числа, но в продакшене такие приколы лучше не писать.
Сортировка вставками (объяснение алгоритма)

Как и сортировка выборкой, этот алгоритм сегментирует список на две части: отсортированную и неотсортированную. Алгоритм перебирает второй сегмент и вставляет текущий элемент в правильную позицию первого сегмента.

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

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

Время сортировки вставками в среднем равно O(n²), где n — количество элементов списка.
🐍 Самоучитель по Python для начинающих. Часть 20: Графический интерфейс на Tkinter

Расскажем о преимуществах и недостатках Tkinter, изучим основы создания GUI и разберемся в особенностях компоновки виджетов с помощью pack(), place() и grid(). В конце статьи – 10 практических заданий по разработке GUI для Python-программ.

🔗 Основной сайт
🔗 Зеркало
🧒👾Тест-игра на выживание: как джуну протянуть первую рабочую неделю и не потерять работу

Первая неделя на новой работе – это всегда стресс для разработчика. В голове тысяча мыслей, давление зашкаливает, и сердце стучит без остановки. Знаете ли вы, как в такой ситуации не перегореть на старте? Если да, тогда вы легко пройдете нашу мини-игру на выживание про адаптацию джуна в незнакомых условиях. Итак, представьте: желанный оффер уже получен, вас приняли в компанию вашей мечты и сегодня первый рабочий день.

🔗 Основной сайт
🔗 Зеркало