你能直接定义 __doc__ 吗?

问题描述

我希望我的文档字符串是一个 f 字符串来放置信息,但是如果我尝试这样做,当您键入 foo.__doc__help(foo) 时它不会显示,所以我尝试了以下:

使用了未注册为文档字符串的 .format()

尝试执行self.__doc__ = f"""...""",但仍然无效:

def foo():
    self.__doc__ = f"""foo() is a function."""
    pass

我在一个网站上读到可以定义文档字符串而不只是在开头放置文档字符串,但它没有说明如何。

我该如何开始?

解决方法

__doc__ 只是一个属性。您可以在定义类/函数/方法后定义它:

def func():
    pass

func.__doc__ = f"My function doc using fstring"

class Myclass:

    def my_method():
        pass

    my_method.__doc__ = f"My method doc using string"

Myclass.__doc__ = f"My class doc using fstring"

help()funcMyClass 上调用 my_method 将显示您的字符串。