# Python Patterns

> This skill should be used for Python idioms, type hints, async/await, pytest, Django, Flask, FastAPI, Python web frameworks, pandas, data processing Use when this capability is needed.

- Skill: `tomevault-io/python-patterns` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/python-patterns`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/python-patterns/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/python-patterns

---


# Python Patterns

Idiomatic Python patterns for Python 3.10+.

## Type Hints

```python
def process(data: list[str]) -> dict[str, int]:
    return {item: len(item) for item in data}
```

## Dataclasses

```python
from dataclasses import dataclass

@dataclass
class User:
    name: str
    email: str
    active: bool = True
```

## Context Managers

```python
with open("file.txt") as f:
    content = f.read()
```

## Pytest

```python
import pytest

def test_add():
    assert add(2, 3) == 5

@pytest.fixture
def user():
    return User(name="test")
```

## Async/Await

```python
async def fetch_data(url: str) -> dict:
    async with aiohttp.ClientSession() as session:
        async with session.get(url) as response:
            return await response.json()
```

## Error Handling

```python
try:
    result = risky_operation()
except ValueError as e:
    logger.error(f"Invalid value: {e}")
    raise
```

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/zate) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

