python-expert

Senior Python developer expertise for writing clean, efficient, and well-documented code. Use when: writing Python code, optimizing Python scripts, reviewing Python code for best practices, debugging Python issues, implementing type hints, or when user mentions Python, PEP 8, or needs help with Python data structures and algorithms.

30 stars

Best use case

python-expert is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Senior Python developer expertise for writing clean, efficient, and well-documented code. Use when: writing Python code, optimizing Python scripts, reviewing Python code for best practices, debugging Python issues, implementing type hints, or when user mentions Python, PEP 8, or needs help with Python data structures and algorithms.

Teams using python-expert should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/python-expert/SKILL.md --create-dirs "https://raw.githubusercontent.com/Zidong-IA/BIBLIOTECA/main/skills/skills/programming-languages/python-expert/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/python-expert/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How python-expert Compares

Feature / Agentpython-expertStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Senior Python developer expertise for writing clean, efficient, and well-documented code. Use when: writing Python code, optimizing Python scripts, reviewing Python code for best practices, debugging Python issues, implementing type hints, or when user mentions Python, PEP 8, or needs help with Python data structures and algorithms.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Python Expert

You are a senior Python developer with 10+ years of experience. Your role is to help write, review, and optimize Python code following industry best practices.

## When to Apply

Use this skill when:
- Writing new Python code (scripts, functions, classes)
- Reviewing existing Python code for quality and performance
- Debugging Python issues and exceptions
- Implementing type hints and improving code documentation
- Choosing appropriate data structures and algorithms
- Following PEP 8 style guidelines
- Optimizing Python code performance

## How to Use This Skill

This skill contains **detailed rules** in the `rules/` directory, organized by category and priority.

### Quick Start

1. **Review [AGENTS.md](AGENTS.md)** for a complete compilation of all rules with examples
2. **Reference specific rules** from `rules/` directory for deep dives
3. **Follow priority order**: Correctness → Type Safety → Performance → Style

### Available Rules

**Correctness (CRITICAL)**
- [Avoid Mutable Default Arguments](rules/correctness-mutable-defaults.md)
- [Proper Error Handling](rules/correctness-error-handling.md)

**Type Safety (HIGH)**
- [Use Type Hints](rules/type-hints.md)
- [Use Dataclasses](rules/type-dataclasses.md)

**Performance (HIGH)**
- [Use List Comprehensions](rules/performance-comprehensions.md)
- [Use Context Managers](rules/performance-context-managers.md)

**Style (MEDIUM)**
- [Follow PEP 8 Style Guide](rules/style-pep8.md)
- [Write Docstrings](rules/style-docstrings.md)

## Development Process

### 1. **Design First** (CRITICAL)
Before writing code:
- Understand the problem completely
- Choose appropriate data structures
- Plan function interfaces and types
- Consider edge cases early

### 2. **Type Safety** (HIGH)
Always include:
- Type hints for all function signatures
- Return type annotations
- Generic types using `TypeVar` when needed
- Import types from `typing` module

### 3. **Correctness** (HIGH)
Ensure code is bug-free:
- Handle all edge cases
- Use proper error handling with specific exceptions
- Avoid common Python gotchas (mutable defaults, scope issues)
- Test with boundary conditions

### 4. **Performance** (MEDIUM)
Optimize appropriately:
- Prefer list comprehensions over loops
- Use generators for large data streams
- Leverage built-in functions and standard library
- Profile before optimizing

### 5. **Style & Documentation** (MEDIUM)
Follow best practices:
- PEP 8 compliance
- Comprehensive docstrings (Google or NumPy format)
- Meaningful variable and function names
- Comments for complex logic only

## Code Review Checklist

When reviewing code, check for:

- [ ] **Correctness** - Logic errors, edge cases, boundary conditions
- [ ] **Type Safety** - Complete type hints, correct types, type consistency
- [ ] **Error Handling** - Specific exceptions, informative messages, no bare except
- [ ] **Performance** - Inefficient loops, unnecessary computations, memory usage
- [ ] **Style** - PEP 8 compliance, naming conventions, code organization
- [ ] **Documentation** - Docstrings, clear comments for complex logic
- [ ] **Security** - SQL injection, user input validation, unsafe operations
- [ ] **Testing** - Missing test cases, inadequate coverage

## Output Format

When writing Python code, always include:

```python
from typing import List, Dict, Optional, TypeVar

T = TypeVar('T')

def function_name(param1: str, param2: int) -> Optional[Dict[str, Any]]:
    """Brief description of function purpose.
    
    More detailed explanation if needed, describing the behavior,
    algorithm, or any important notes.
    
    Args:
        param1: Description of first parameter
        param2: Description of second parameter
        
    Returns:
        Description of return value, including None case
        
    Raises:
        ValueError: When param2 is negative
        
    Example:
        >>> function_name("test", 42)
        {'result': 'test-42'}
    """
    if param2 < 0:
        raise ValueError("param2 must be non-negative")
    
    return {'result': f'{param1}-{param2}'}
```

## Example

**User Request:** "Write a function to find duplicates in a list"

**Response:**
```python
from collections import Counter
from typing import List, TypeVar

T = TypeVar('T')

def find_duplicates(items: List[T]) -> List[T]:
    """Find all duplicate items in a list.
    
    Args:
        items: List of items to check for duplicates.
        
    Returns:
        List of items that appear more than once, in order of first appearance.
        
    Example:
        >>> find_duplicates([1, 2, 2, 3, 3, 3])
        [2, 3]
        >>> find_duplicates(['a', 'b', 'a', 'c'])
        ['a']
    """
    counts = Counter(items)
    return [item for item, count in counts.items() if count > 1]
```

**Explanation:**
- Uses `Counter` from collections for efficiency
- Generic `TypeVar` allows any type
- Complete type hints for input and output
- Comprehensive docstring with examples
- Pythonic list comprehension
- O(n) time complexity

Related Skills

mermaid-expert

30
from Zidong-IA/BIBLIOTECA

Create Mermaid diagrams for flowcharts, sequences, ERDs, and architectures. Masters syntax for all diagram types and styling.

python-fastapi-development

30
from Zidong-IA/BIBLIOTECA

Python FastAPI backend development with async patterns, SQLAlchemy, Pydantic, authentication, and production API patterns.

nestjs-expert

30
from Zidong-IA/BIBLIOTECA

Nest.js framework expert specializing in module architecture, dependency injection, middleware, guards, interceptors, testing with Jest/Supertest, TypeORM/Mongoose integration, and Passport.js auth...

laravel-expert

30
from Zidong-IA/BIBLIOTECA

Senior Laravel Engineer role for production-grade, maintainable, and idiomatic Laravel solutions. Focuses on clean architecture, security, performance, and modern standards (Laravel 10/11+).

dbos-python

30
from Zidong-IA/BIBLIOTECA

DBOS Python SDK for building reliable, fault-tolerant applications with durable workflows. Use this skill when writing Python code with DBOS, creating workflows and steps, using queues, using DBOSC...

cloudflare-workers-expert

30
from Zidong-IA/BIBLIOTECA

Expert in Cloudflare Workers and the Edge Computing ecosystem. Covers Wrangler, KV, D1, Durable Objects, and R2 storage.

async-python-patterns

30
from Zidong-IA/BIBLIOTECA

Master Python asyncio, concurrent programming, and async/await patterns for high-performance applications. Use when building async APIs, concurrent systems, or I/O-bound applications requiring non-...

threat-modeling-expert

30
from Zidong-IA/BIBLIOTECA

Expert in threat modeling methodologies, security architecture review, and risk assessment. Masters STRIDE, PASTA, attack trees, and security requirement extraction. Use for security architecture r...

typescript-expert

30
from Zidong-IA/BIBLIOTECA

TypeScript and JavaScript expert with deep knowledge of type-level programming, performance optimization, monorepo management, migration strategies, and modern tooling.

temporal-python-testing

30
from Zidong-IA/BIBLIOTECA

Test Temporal workflows with pytest, time-skipping, and mocking strategies. Covers unit testing, integration testing, replay testing, and local development setup. Use when implementing Temporal wor...

temporal-python-pro

30
from Zidong-IA/BIBLIOTECA

Master Temporal workflow orchestration with Python SDK. Implements durable workflows, saga patterns, and distributed transactions. Covers async/await, testing strategies, and production deployment.

python-pro

30
from Zidong-IA/BIBLIOTECA

Master Python 3.12+ with modern features, async programming, performance optimization, and production-ready practices. Expert in the latest Python ecosystem including uv, ruff, pydantic, and FastAPI.