Skip to main content

python-docstrings

Enforces Google-style Python docstrings for Python code

来源信息

仓库
open-edge-platform/anomalib
最近来源活动
2026年4月10日 11:50
检测到的 SKILL.md 语言
英语
星标
6,252
分支
1,004

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
python-docstrings
description
Enforces Google-style Python docstrings for Python code
# Python Docstring Rules Use this skill when reviewing or writing Python docstrings. ## Purpose and scope - Use Google-style docstrings. - Focus on public Python modules, classes, functions, and methods. - Keep docstrings compact, specific, and easy to scan. ## Request changes when - a public API has no docstring; - the summary line is vague or inaccurate; - arguments, returns, or intentionally raised exceptions are undocumented; - a non-trivial public API needs an example but does not have one. ## Required structure 1. Short description 2. Optional longer explanation 3. `Args` 4. `Returns` 5. Optional `Raises` 6. Optional `Example` ## Formatting rules - Limit docstrings to 120 characters per line. - In `Args`, use `name (type): description`. - In `Returns`, describe both the type and meaning of the returned value. - Add `Raises` when the function intentionally raises exceptions. - Use doctest-style `Example` blocks with `>>>` when examples help clarify usage. ## Reviewer checklist - Is the docstring present on the public API? - Is the summary line accurate? - Are inputs, outputs, and exceptions documented? - Would a user understand how to call this API from the docstring alone? ## Example ```python def my_function(param1: int, param2: str = "default") -> bool: """Short description. A longer explanation. Args: param1 (int): Explanation of param1. param2 (str): Explanation of param2. Defaults to "default". Returns: bool: Explanation of the return value. Example: >>> my_function(1, "test") True """ return True ``` ## Docstring for `__init__` method - Document constructor arguments in the class docstring rather than in a separate `__init__` docstring. ```python class MyClass: """My class description. A longer explanation. Args: param1 (int): Description of param1. param2 (str): Description of param2. Example: >>> my_class = MyClass(param1=1, param2="test") >>> my_class.param1 1 >>> my_class.param2 'test' """ def __init__(self, param1: int, param2: str) -> None: ... ```
在 GitHub 查看