Bibliothèque de prompts

Prompts Python

Prompts pour le code Python : ajouter des annotations de types, écrire des suites pytest et profiler les fonctions lentes.

Les prompts sont en anglais, la langue dans laquelle ils ont été écrits et testés. Les descriptions et les consignes de ces pages sont traduites.

  • pytest
  • testing
  • python
100/100 · 139 tokens

Suite pytest pour une fonction

Écrit des tests pytest couvrant les cas normaux, les bornes et les erreurs pour une fonction que vous fournissez.

À utiliser quand : Une fonction n’a pas de tests et vous voulez couvrir les cas limites avant de la refactoriser.

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>

Variables

{{function}}
Le code source de la fonction, avec ses imports.

Exemple d’entrée

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

Exemple de sortie

```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.

Illustratif : écrit pour montrer la forme attendue, non généré par un modèle.

  • type hints
  • mypy
  • python
100/100 · 150 tokens

Ajouter des annotations de types à du code Python

Ajoute des annotations de types précises qui passent un vérificateur de types strict, sans changer le comportement.

À utiliser quand : Pour activer mypy ou pyright sur un module non typé.

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>

Variables

{{module}}
Le code source Python à annoter.

Exemple d’entrée

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

Exemple de sortie

```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().

Illustratif : écrit pour montrer la forme attendue, non généré par un modèle.

Adaptez-le à votre cas

Modifiez les exigences selon vos normes, puis vérifiez le résultat. L’analyseur de prompts le renote pendant que vous tapez, l’optimiseur retire le remplissage sans perdre une exigence, et le scanner de sécurité repère secrets et données personnelles avant l’envoi à un modèle.

Autres catégories