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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.