TGViewer
Библиотека питониста | Python, Django, Flask Библиотека питониста | Python, Django, Flask @pyproglib · 37.3K subscribers
Post #7361 3.65K
🤔 Единый стандарт для «служебных» комментариев в коде

В 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

📍 Навигация: Вакансии • Задачи • Собесы

🐸 Библиотека питониста

#буст
  • ❤ 10
  • 👍 5
More from @pyproglib
  1. Oct 3, 2026📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих» Мы написали и собр…
  2. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  3. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  4. Sep 25, 2026🔥 Курс «ИИ для разработчиков» уже стартовал И мы решили открыть первое занятие всем — мож…
  5. Sep 20, 2026👻 94% токенов уходят не на код Анализ запусков показал: основная часть токенов уходит на…
  6. Sep 19, 2026📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих» Мы написали и собр…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →