Skip to content
Back to skills

Python Patterns

ASecurity

Use when pythonic idioms, PEP 8 standards, type hints, and best practices for building robust, efficient, and maintainable Python applications. Only for Python — not for other languages. Triggers on \"python-patterns\", \"python patterns\", \"patterns\".

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
developmentpythonrustgofastapidjangotestingrefactoringapiperformance

Works with

  • api

Security analysis

A100/100

Pro scans all 12 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add majinmagros/magros.ai-skills --skill python-patterns --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Python Patterns?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Python Patterns
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majinmagros-python-patterns/badge)](https://www.skillsdirectory.com/skills/majinmagros-python-patterns)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: python-patterns
description: "Use when pythonic idioms, PEP 8 standards, type hints, and best practices for building robust, efficient, and maintainable Python applications. Only for Python — not for other languages. Triggers on \"python-patterns\", \"python patterns\", \"patterns\"."
metadata:
  origin: ECC
---

# Python Development Patterns

Idiomatic Python patterns and best practices for building robust, efficient, and maintainable applications.

## When to Activate

- Writing new Python code
- Reviewing Python code
- Refactoring existing Python code
- Designing Python packages/modules

## When NOT to Use

- Other languages (use `golang-patterns`, `rust-patterns`, etc.)
- Python test strategy specifically (use `python-testing`)
- Django/FastAPI specifics (use `django-patterns`, `fastapi-patterns`)

## Contents

| Topic | Reference |
|---|---|
| Core principles (readability, explicit, EAFP) | `references/core-principles.md` |
| Type hints (annotations, TypeVar, Protocol) | `references/type-hints.md` |
| Error handling (chaining, hierarchy) | `references/error-handling.md` |
| Context managers | `references/context-managers.md` |
| Comprehensions and generators | `references/comprehensions.md` |
| Dataclasses and named tuples | `references/dataclasses.md` |
| Decorators | `references/decorators.md` |
| Concurrency (threading, multiprocessing, async) | `references/concurrency.md` |
| Package organization and imports | `references/packaging.md` |
| Memory and performance | `references/performance.md` |
| Tooling (format, lint, mypy, pyproject) | `references/tooling.md` |

## Quick Reference: Python Idioms

| Idiom | Description |
|-------|-------------|
| EAFP | Easier to Ask Forgiveness than Permission |
| Context managers | Use `with` for resource management |
| List comprehensions | For simple transformations |
| Generators | For lazy evaluation and large datasets |
| Type hints | Annotate function signatures |
| Dataclasses | For data containers with auto-generated methods |
| `__slots__` | For memory optimization |
| f-strings | For string formatting (Python 3.6+) |
| `pathlib.Path` | For path operations (Python 3.4+) |
| `enumerate` | For index-element pairs in loops |

## Anti-Patterns to Avoid

```python
# Bad: Mutable default arguments
def append_to(item, items=[]):
    items.append(item)
    return items

# Good: Use None and create new list
def append_to(item, items=None):

Files in this skill

  • SKILL.md2.4 KB
  • references/comprehensions.md1.1 KB
  • references/concurrency.md1.8 KB
  • references/context-managers.md1.3 KB
  • references/core-principles.md1.3 KB
  • references/dataclasses.md1.1 KB
  • references/decorators.md1.6 KB
  • references/error-handling.md1.4 KB
  • references/packaging.md1.3 KB
  • references/performance.md1.1 KB
  • references/tooling.md971 B
  • references/type-hints.md1.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…