
- Главная
- Каталог
- Интернет технологии
- Библиотека питониста
Библиотека питониста
Полезные материалы по всему, что может быть полезно питонисту.
Статистика канала
Полная статистикаchevron_rightВ Python куча инструментов — линтеры, форматтеры, анализаторы покрытия, type-checkers.
И почти каждый из них использует специальные комментарии в коде: # noqa, # type: ignore, # fmt: off, # nosec и так далее.
Проблема в том, что единого стандарта для таких комментариев до сих пор не было.
Metacode вводит простой и понятный формат машиночитаемых комментариев, основанный на подмножестве синтаксиса Python:
# key: action[arg1, arg2]
Например:
# type: ignore[error-code]
# fmt: off
Такой формат:
— легко читать человеку
— легко парсить машине
— позволяет несколько комментариев в одной строке
— не привязан к конкретному инструменту
У библиотеки минимальный API:
▪️ parse() — читает комментарии и возвращает структурированный результат
▪️ insert() — аккуратно добавляет комментарии в код
Поддерживаются строки, числа, bool, None, ..., а при желании — даже AST.
🔗 Github
📍 Навигация: Вакансии • Задачи • Собесы
#буст
import knowledge as powerPython хорош тем, что на нем можно написать всё. Но чтобы писать хорошо и дорого, одного синтаксиса мало. Нужна математика, алгоритмы и понимание архитектуры.
Акция 1 + 2:
Забирай три курса по цене одного. Платишь за самый дорогой, остальные —
None (в смысле, бесплатно).Топ выбор:
— алгоритмы и структуры данных;
— математика для Data Science (если тянет в ML).
Обновить зависимости
До 31 декабря.
Помощь в консоли: @manager_proglib
В Python 3.14 появился новый пакет
compression — и это тот редкий случай, когда «объединили старое и добавили новое» получилось реально полезно.Теперь работа со сжатием — это единый интерфейс, а не квест из пяти разных модулей и документаций.
В пакете
compression собрали сразу 5 алгоритмов:bz2gziplzmazlibПричём первые четыре и раньше были в стандартной библиотеке, но теперь их рекомендуют импортировать через
compression, чтобы всё было в одном стиле:
from compression import gzip, zstd
У всех модулей есть:
compress(data)
decompress(data)
Можно буквально перебрать алгоритмы в цикле и сравнить результат. Да, Python теперь позволяет выбрать компрессию так же просто, как сортировку.
На тестовых данных
zstd сжимает в 2+ раза лучше, чем старые алгоритмы.Меньше байтов — меньше боли при хранении, передаче и бэкапах:
from compression import zstd
compressor = zstd.ZstdCompressor()
result = b""
bytes_processed = 0
for chunk in incoming_data_stream():
# `chunk` is a new batch of data.
bytes_processed += len(chunk)
# We compress this batch.
result += compressor.compress(chunk)
result += compressor.flush()
ratio = len(result) / bytes_processed
print(f"{100 * ratio:>.2f}%") # 0.56%
Например:
with zstd.open("data.zst", "wt") as f:
f.write("Hello, world!" * 1000)
Для стримов, логов и больших данных есть компрессоры и декомпрессоры:
Например:
compressor = zstd.ZstdCompressor()
compressor.compress(chunk)
compressor.flush()
📍 Навигация: Вакансии • Задачи • Собесы
#буст
tyro 1.0 — CLI из type hints
Релиз tyro 1.0 — генерация CLI-интерфейсов напрямую из аннотированного Python-кода. Минимум бойлерплейта, максимум типизации. Наконец-то инструмент, который не заставляет выбирать между «быстро» и «аккуратно». Type hints реально начинают работать на вас, а не просто радовать линтер.
RoadMap по Python: с нуля до middle
Подробный маршрут обучения Python с акцентом на практику и реальные навыки. Полезно не только новичкам — хороший чек-лист, чтобы понять, где у вас пробелы, даже если вы уже «давно в профессии».
Django 6.0: эволюция фреймворка в деталях
Разбор ключевых изменений Django 6.0 и того, куда движется фреймворк. Django всё дальше уходит от образа «только для CRUD». Фоновые задачи и архитектурные улучшения — сигнал, что фреймворк взрослеет вместе с проектами.
Python + Fortran: когда NumPy уже мало
Как ускорить Python-код в 150 раз с помощью Fortran, не погружаясь в C++. Отличный пример того, что Python — это не про «медленно», а про правильную композицию инструментов.
Что нового в PyCharm 2025.3
Обновления IDE: улучшения анализа кода, AI-фичи и удобства для больших проектов.я
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#свежак
Мы написали и собрали для вас в одну подборку все 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
Делимся полезным ресурсом для всех, кто учит Python или хочет держать его под рукой: Python Complete Notes.
🎯 Отлично подходит для учебы, быстрой проверки и повторения материала.
#буст
Интересная новость из Python-мира: на обсуждение вынесен PEP 814, предлагающий добавить в стандартный язык frozendict — неизменяемый словарь как встроенный тип.
Почему это важно?
До сих пор в стандартной библиотеке не было простого и безопасного способа делиться словарями между потоками или агентами без риска гонок данных.
Что такое frozendict?
Это иммутабельный словарь, не наследующий
dict, а реализующий интерфейс Mapping.Создаётся привычными способами:
fd = frozendict(a=1, b=2)
fd = frozendict({'a': 1, 'b': 2})
fd = frozendict([('a', 1), ('b', 2)])
Если все значения внутри тоже неизменяемые, то
frozendict становится хэшируемым, значит:functools.lru_cacheПоддерживаются и объединения:
frozendict(x=1) | frozendict(y=1)
— всегда создаётся новый объект, что исключает побочные эффекты.
Сообщество PEP восприняло идею в целом тепло. Больше всего споров вызвало желание добавить O(1) заморозку словаря — например, через
d.freeze().Но менять тип существующего объекта в рантайме признали слишком рискованным: возможны сюрпризы для других потоков, держащих ссылку на словарь. Поэтому оптимизации отложили «на потом», чтобы не мешать движению самого PEP.
Учитывая актуальность темы для free-threaded Python, шанс принятия выглядит высоким.
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#буст
Если вы когда-нибудь делали презентацию по научной статье, то знаете боль: копируй текст, вырезай картинки, выравнивай заголовки… и так по кругу.
Paper2Slides приходит, чтобы забрать эту карму себе.
Что умеет Paper2Slides:
Одна команда — и готово:
python -m paper2slides --input paper.pdf --output slides --style doraemon --length medium --fast --parallel 2
🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#буст
Python проповедует «должен быть один очевидный способ».
Но когда дело доходит до форматирования строк, у нас их целых четыре.
И все живы. И все работают. И все почему-то до сих пор используются.
Разбираемся, зачем Python столько лет собирал «зоопарк» способов форматирования и какой из них реально использовать в 2025 году.
🦖 C-style форматирование (%)
Самый старый способ, наследие времён динозавров и языка C.
Работает, но читать это — страдание:
"Error in %s at %d" % (module, line)
А если случайно перепутать аргументы — привет, дебаг.
Лучше не использовать в новом коде. Но logging до сих пор на нём живёт — там он действительно нужен.
🔧 .format() — попытка навести порядок
Пришло в Python 3 и казалось, оно победит. Фигурные скобки, именованные аргументы, красота:
"{host}:{port}".format(host="localhost", port=8080)
Читается хорошо, работает надёжно. Но многословно, и имена приходится дублировать.
Использовать: можно, но есть лучше.
🚀 F-строки — любовь разработчиков с первого взгляда
Появились в Python 3.6 и моментально стали стандартом. Лаконично, быстро, удобно:
print(f"Hello, {user_name}")
Даже вычисления внутри строки:
f"Pi = {math.pi:.3f}"
И лучший инструмент для отладки —
=print(f"{user_id=}")
Использовать: по умолчанию.
🧙 Сила Format Mini-Language
Настоящее волшебство начинается после двоеточия:
f"{price:,.2f}" # 1,234,567.89
f"{value:08b}" # бинарный с ведущими нулями
f"{date:%Y-%m-%d}" # форматирование дат
Это отдельный маленький язык, и он мощнее, чем многие думают.
Когда f-строки — плохая идея:
F-строка вычислится всегда, даже если лог не будет выведен:
logging.debug(f"Result: {heavy_calc()}")
Правильно:
logging.debug("Result: %s", heavy_calc)
Не вздумайте:
f"SELECT * FROM users WHERE name = '{user_input}'"
Лучше используйте параметры запросов.
Итоговая шпаргалка:
.format() — когда шаблон живёт отдельно от кода% — только для logging🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#буст
Отзывы канала
всего 3 отзыва
- Добавлен: Сначала новые
- Добавлен: Сначала старые
- Оценка: По убыванию
- Оценка: По возрастанию
Каталог Телеграм-каналов для нативных размещений
Библиотека питониста — это Telegam канал в категории «Интернет технологии», который предлагает эффективные форматы для размещения рекламных постов в Телеграмме. Количество подписчиков канала в 39.3K и качественный контент помогают брендам привлекать внимание аудитории и увеличивать охват. Рейтинг канала составляет 6.4, количество отзывов – 3, со средней оценкой 5.0.
Вы можете запустить рекламную кампанию через сервис Telega.in, выбрав удобный формат размещения. Платформа обеспечивает прозрачные условия сотрудничества и предоставляет детальную аналитику. Стоимость размещения составляет 34615.35 ₽, а за 15 выполненных заявок канал зарекомендовал себя как надежный партнер для рекламы в TG. Размещайте интеграции уже сегодня и привлекайте новых клиентов вместе с Telega.in!
Вы снова сможете добавить каналы в корзину из каталога
Комментарий