如何为类属性/元素打印文档字符串?

问题描述 投票:2回答:3

我有课:

class Holiday(ActivitiesBaseClass):
    """Holiday is an activity that involves taking time off work"""

    Hotel = models.CharField(max_length=255)
    """ Name of hotel """

我可以输入以下内容来打印类文档字符串:

print(Holiday.__doc__)

此输出为:

Holiday is an activity that involves taking time off work 

我如何打印作为Class属性/元素的Hotel的文档字符串?

我尝试过的

print(Holiday.Hotel.__doc__)

返回:

A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

我也尝试过help()函数无济于事。

python django python-3.x django-models docstring
3个回答
2
投票

[不幸的是,目前在Python中没有这样的属性文档字符串实现。有PEP建议实现此功能,但遭到拒绝。


2
投票

不认为可以为特定字段添加文档字符串,但是您可以改用字段的help_text参数:

help_text

-2
投票

谈论python本身:

可以与之互动显示

Hotel = models.CharField(max_length=255, help_text="Name of hotel")

或者从代码中,您可以像在问题中那样使用help(Holiday) 进行检索

__doc__

这将输出有关Holiday.__doc__ 类的文档字符串信息。

您也可以检查此

Holiday

如果是django字段,则必须使用https://docs.python.org/3/library/inspect.html#inspect.getdoc,这是获取help_text描述的方式。

help_text

如果需要,也可以使用相同的方法获得verbose_name

Holiday._meta.get_field('Hotel').help_text
© www.soinside.com 2019 - 2024. All rights reserved.