ChatGPT Код 👁 11

Docstring Python в Google-стиле по сигнатуре функции

Docstring Python в Google-стиле: Args/Returns/Raises/Examples по сигнатуре функции без воды.

Промпт Запустить →
Напиши docstring в Google-стиле по сигнатуре функции. Верни только текст docstring вместе с тройными кавычками — без самой функции и без пояснений вокруг.

Сигнатура: [СИГНАТУРА: def merge_price_lists(paths: list[Path], currency: str = "RUB", drop_zero: bool = True) -> dict[str, Decimal]:]
Что делает: [ОПИСАНИЕ: читает CSV-прайсы поставщиков, приводит цены к одной валюте, возвращает соответствие артикул → цена; при повторе артикула берёт минимальную цену]
Что бросает: [ИСКЛЮЧЕНИЯ: FileNotFoundError, если пути не существует; ValueError, если в файле нет колонки article]

Разделы по порядку: строка-резюме, Args, Returns, Raises, Examples. В Args — все параметры сигнатуры, в том же порядке, со значением по умолчанию, названным словами. В Examples — один вызов в формате doctest вместе с выводом. Обычный текст: ни markdown, ни списков через дефис, ни ссылок.

Отсечка. Docstring описывает договор функции, а не её внутренности: не пересказывай алгоритм по шагам, не упоминай локальные переменные и вспомогательные функции, не объясняй, почему выбран такой подход. В Raises — только исключения из моего списка, даже если ты видишь другие вероятные. Резюме — до двенадцати слов, одной строкой.

Проверка. Сверь имена в Args с сигнатурой по буквам: лишних нет, пропущенных нет, порядок тот же. Сверь тип в Returns с аннотацией возврата — расходятся, значит прав файл, а не твоя формулировка. Прогони пример из Examples в уме и убедись, что написанный вывод получается именно из этого вызова; если функция читает файлы или зависит от курса и времени, покажи вызов с конкретными аргументами и коротким результатом из двух записей, а не многоточие и не выдуманную портянку.
Запустить промпт →

Пример результата

"""Подсчитывает уникальные значения в списке. Args: items: Список значений для подсчёта. case_sensitive: Учитывать ли регистр строк. По умолчанию True. Returns: Словарь {значение: количество}, отсортированный по убыванию. Raises: TypeError: Если items не является итерируемым. Examples: >>> count_unique([1, 2, 2, 3]) {2: 2, 1: 1, 3: 1} """

Похожие промпты

Рефакторинг легаси-модуля в Kimi: карта, план, код по шагам
Kimi
Рефакторинг легаси-модуля в Kimi: карта, план, код по шагам
Kimi
Сайт-визитка с 3D одним промптом — Kimi K3
Claude
Системный промпт для AI Agent ноды n8n — Claude
DeepSeek
Телеграм-бот на n8n в DeepSeek: схема нод, которую можно собрать за вечер

Полезные статьи

Как сделать мультфильм нейросетью по сценарию: промты и замеры
Дипсик и фото: как загрузить, что умеет и почему не грузится
Локальные нейросети для видео: замеры на карте 12 ГБ

Все гайды →