Python函数注释备注的写法和使用方法

 更新时间:2026年01月18日 15:10:47   作者:小满大王i  
在Python中,为函数添加备注主要通过文档字符串(docstring) 实现,这是Python官方推荐的最佳实践,而非单纯使用#单行注释,下面我会详细介绍不同风格的函数备注写法和使用方法,需要的朋友可以参考下

一、基础写法(单行文档字符串)

适用于功能简单、参数和返回值都很明确的函数。

def add(a, b):
    """计算两个数的和"""
    return a + b

# 查看函数备注的方法
print(add.__doc__)  # 输出:计算两个数的和
help(add)  # 更友好的交互式查看,会显示函数签名+备注

二、标准写法(多行文档字符串)

适用于功能复杂、有多个参数/返回值、需要说明异常的函数,主流有两种风格:

1. Google风格(最易读,推荐新手使用)

def calculate_area(shape: str, width: float, height: float = None) -> float:
    """
    计算常见几何图形的面积。

    支持的图形:矩形(rectangle)、三角形(triangle)
    
    Args:
        shape: 图形类型,可选值为 "rectangle" 或 "triangle"
        width: 宽度/底边长(浮点型)
        height: 高度(浮点型),矩形可不传(默认等于width,即正方形)
    
    Returns:
        计算出的面积(浮点型)
    
    Raises:
        ValueError: 当shape不是指定值,或宽/高为负数时抛出
    """
    if width < 0 or (height and height < 0):
        raise ValueError("宽/高不能为负数")
    
    if shape == "rectangle":
        height = height or width  # 未传height时默认正方形
        return width * height
    elif shape == "triangle":
        if not height:
            raise ValueError("三角形必须传入height")
        return 0.5 * width * height
    else:
        raise ValueError(f"不支持的图形类型:{shape}")

# 查看备注
help(calculate_area)

2. Sphinx风格(常用于生成官方文档)

def calculate_area(shape: str, width: float, height: float = None) -> float:
    """
    计算常见几何图形的面积。

    :param shape: 图形类型,可选值为 "rectangle" 或 "triangle"
    :type shape: str
    :param width: 宽度/底边长(浮点型)
    :type width: float
    :param height: 高度(浮点型),矩形可不传(默认等于width)
    :type height: float
    :return: 计算出的面积
    :rtype: float
    :raises ValueError: 当shape非法或宽/高为负时抛出
    """
    # 逻辑和上面一致(省略)
    pass

三、关键补充

  1. 文档字符串的位置:必须紧跟函数定义行,且是函数内的第一个语句。
  2. 类型注解(可选但推荐):像上面的shape: str-> float是Python 3.5+支持的类型注解,和文档字符串配合,能让函数的参数/返回值类型更清晰。
  3. 查看备注的常用方式
    • 函数名.__doc__:直接获取文档字符串文本。
    • help(函数名):格式化输出函数的完整信息(含参数、备注、异常)。
    • IDE支持:PyCharm、VS Code等会自动读取文档字符串,在调用函数时显示提示。

总结

  1. Python函数备注首选文档字符串(docstring),而非单行注释,help()和IDE能识别它。
  2. 简单函数用单行docstring,复杂函数推荐Google风格的多行docstring(易读、易维护)。
  3. 配合类型注解(如param: type),能让函数的参数/返回值含义更清晰。

到此这篇关于Python函数注释备注的写法和使用方法的文章就介绍到这了,更多相关Python函数注释备注内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题

    解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题

    这篇文章主要介绍了解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python操作dict时避免出现KeyError的几种解决方法

    Python操作dict时避免出现KeyError的几种解决方法

    这篇文章主要介绍了Python操作dict时避免出现KeyError的几种解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • python中的[1:]、[::-1]、X[:,m:n]和X[1,:]的使用

    python中的[1:]、[::-1]、X[:,m:n]和X[1,:]的使用

    本文主要介绍了python中的[1:]、[::-1]、X[:,m:n]和X[1,:]的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • python判断自身是否正在运行的方法

    python判断自身是否正在运行的方法

    今天小编就为大家分享一篇python判断自身是否正在运行的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Pytest自定义用例执行顺序(推荐)

    Pytest自定义用例执行顺序(推荐)

    github 上有个 pytest-ordering 插件可以控制用例的执行顺序,本文给大家介绍了Pytest自定义用例执行顺序,需要的朋友可以参考下
    2021-12-12
  • Python连接KingbaseES的实战指南

    Python连接KingbaseES的实战指南

    在数据库国产化替代的大背景下,人大金仓KingbaseES作为国产数据库的佼佼者,其应用生态日益完善,本文给大家介绍了使用了Python连接KingbaseES的Ksycopg2驱动,需要的朋友可以参考下
    2025-10-10
  • Python数字图像处理基础直方图详解

    Python数字图像处理基础直方图详解

    这篇文章主要介绍了Python数字图像处理基础直方图详解,本文对Python直方图的定义、性质、应用以及Python直方图的计算作了详细的讲解,有需要朋友可以借鉴参考下
    2021-09-09
  • 基于matplotlib+tkinter实现简单的绘图系统

    基于matplotlib+tkinter实现简单的绘图系统

    在理解matplotlib嵌入到tkinter中的原理之后,就已经具备了打造绘图系统的技术基础,所以本文来实现一个简单的绘图系统,感兴趣的小伙伴小伙伴可以了解一下
    2023-08-08
  • python判断列表的连续数字范围并分块的方法

    python判断列表的连续数字范围并分块的方法

    今天小编就为大家分享一篇python判断列表的连续数字范围并分块的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • Django自定义用户表+自定义admin后台中的字段实例

    Django自定义用户表+自定义admin后台中的字段实例

    今天小编就为大家分享一篇Django自定义用户表+自定义admin后台中的字段实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11

最新评论