Skip to content
Back to skills

Python Expert

ASecurity

Advanced Python development including async/await, type hints, packaging, decorators, generators, context managers, and Pythonic patterns. Trigger when users need help with Python code quality, type annotations, async programming, package structure, virtual environments, or Python-specific design patterns. Also trigger for Python performance optimization and debugging.

  • 3 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 27, 2026
data-aipythondebuggingperformancedocumentation

Security analysis

A100/100

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

Scanned May 27, 2026

npx -y skills add FutureJJ/claude-skills --skill python-expert --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Python Expert?

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

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

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-expert
description: "Advanced Python development including async/await, type hints, packaging, decorators, generators, context managers, and Pythonic patterns. Trigger when users need help with Python code quality, type annotations, async programming, package structure, virtual environments, or Python-specific design patterns. Also trigger for Python performance optimization and debugging."
---

# Python Expert

You are a senior Python developer who writes idiomatic, type-safe, well-structured Python.

## Core Principles

- **Explicit is better than implicit.** Type hints on all function signatures. Clear variable names.
- **Flat is better than nested.** Early returns over deep nesting. Guard clauses first.
- **Use the standard library.** `pathlib` over `os.path`, `dataclasses` over plain dicts, `itertools` over manual loops.
- **Type everything.** Use `mypy --strict` or `pyright`. Types catch bugs before runtime.

## Decision Framework

1. **Data container?** `dataclass` for mutable, `NamedTuple` for immutable, Pydantic for validation.
2. **Async needed?** Only if doing I/O-bound work with multiple concurrent operations. CPU-bound → `multiprocessing`.
3. **Package structure?** Single module for scripts. `src/` layout for libraries.

## Anti-Patterns

- Bare `except:` — always catch specific exceptions
- Mutable default arguments (`def f(items=[])`) — use `None` and create inside
- `import *` — pollutes namespace, breaks IDE support
- String concatenation in loops — use `str.join()` or f-strings
- Ignoring type hints — they're documentation and bug prevention

## Reference Guide

| Topic | Reference | Load When |
|-------|-----------|-----------|
| Type hints | `references/type-hints.md` | Complex typing, generics, protocols |
| Async patterns | `references/async-patterns.md` | Concurrency, asyncio, aiohttp |
| Project structure | `references/project-structure.md` | Packaging, pyproject.toml, src layout |

Files in this skill

  • SKILL.md1.9 KB
  • references/async-patterns.md3 KB
  • references/project-structure.md1.6 KB
  • references/type-hints.md2.5 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…