Библиотека промптов

Промпты: Python

Промпты для кода на Python: добавление аннотаций типов, написание наборов тестов pytest и профилирование медленных функций.

Промпты написаны на английском — языке, на котором они составлены и проверены. Описания и инструкции на этих страницах переведены.

  • pytest
  • testing
  • python
100/100 · 139 токенов

Набор тестов pytest для функции

Пишет тесты pytest для обычных случаев, границ и ошибок для предоставленной вами функции.

Используйте, когда: У функции нет тестов, и вы хотите покрыть граничные случаи до её рефакторинга.

prompt
You are a senior Python engineer writing tests with pytest.

## Task
Write a pytest test module for the function below.

## Requirements
- Cover one normal case, every boundary value, and every exception the function raises.
- Use pytest.mark.parametrize where 3 or more cases share one assertion.
- Name each test test_<function>_<condition>_<expected result>.
- Use only pytest and the standard library.
- Do not test behavior the function does not implement.

## Output format
Return one Python code block containing the complete test module, followed by a bulleted list of any behavior in the function that looks like a bug.

## Input
<function>
{{function}}
</function>

Переменные

{{function}}
Исходный код функции вместе с импортами.

Пример ввода

function: def parse_duration(text: str) -> int, which converts "1h30m" to seconds and raises ValueError on bad input.

Пример вывода

```python
@pytest.mark.parametrize("text, expected", [("1h", 3600), ("30m", 1800), ("1h30m", 5400)])
def test_parse_duration_valid_returns_seconds(text, expected):
    assert parse_duration(text) == expected
```
- `parse_duration("")` returns 0 instead of raising ValueError.

Иллюстрация: написан, чтобы показать ожидаемую форму, а не создан моделью.

  • type hints
  • mypy
  • python
100/100 · 150 токенов

Добавление аннотаций типов в код Python

Добавляет точные аннотации типов, проходящие строгую проверку типов, не меняя поведения.

Используйте, когда: Включение mypy или pyright для нетипизированного модуля.

prompt
You are a senior Python engineer adding type hints for a strict type checker.

## Task
Add type hints to the Python module below so it passes mypy in strict mode.

## Requirements
- Do not change runtime behavior, names, or signatures beyond adding annotations.
- Never use Any; use object, a Protocol, or a TypeVar where the type varies.
- Use built-in generics such as list[str] and the X | None syntax.
- Use a TypedDict or dataclass for every dictionary with fixed keys.

## Output format
Return one Python code block containing the annotated module, followed by a bulleted list of every annotation you were unsure of and what you assumed.

## Input
<module>
{{module}}
</module>

Переменные

{{module}}
Исходный код Python для аннотирования.

Пример ввода

module: a functions file with def load_users(path) that returns a list of dicts with name and email.

Пример вывода

```python
class User(TypedDict):
    name: str
    email: str

def load_users(path: str | Path) -> list[User]: ...
```
- `path`: assumed to accept both str and Path, as it is passed to open().

Иллюстрация: написан, чтобы показать ожидаемую форму, а не создан моделью.

Сделайте его своим

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

Другие категории