Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我要在Python中设置部分对象的_doc___;?_Python_Functools - Fatal编程技术网

为什么我要在Python中设置部分对象的_doc___;?

为什么我要在Python中设置部分对象的_doc___;?,python,functools,Python,Functools,指部分物体。 然而,这本书中的例子说明了这一点: 如果没有帮助,为什么要设置\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu def somefunc(somerandomarg): """This is a docstring What I am doing is shorthand for __doc__ = "

指部分物体。 然而,这本书中的例子说明了这一点:


如果没有帮助,为什么要设置
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

def somefunc(somerandomarg):
    """This is a docstring
    What I am doing is shorthand for __doc__ = "random docstring"
    For partials, you can't do this, so you set it with __doc__"""
    pass

记录任何东西都是好的,即使是部分内容。

显然,
pydoc
不知道
partial
对象,也不希望它们有修改。理论上,更智能的工具也会遇到同样的问题。我在这里演示了如何重写
partial()
,作为一个保留
\uuuu doc\uuuu
的装饰器工厂:我希望它们也是一样的。但是如果你阅读我链接的
help()
问题,你会发现它们是不同的;分部不是函数,而是对象
help()
将显示分部类及其方法的文档。正如在链接中所说的,如果不修改Python代码,就无法覆盖它。但是,在Python中,当您键入docstring时,pydoc将显示它。键入它是什么意思?当我在一个part.py中键入这个时,
pydoc part.basetwo
显示partial的文档,而不是我键入的文档。进入Python Shell,在文档中定义一个类似于basetwo的分部函数。然后输入
basetwo(
)。您的文档将显示。我认为帮助不起作用的原因是没有人对pydoc进行编码以了解部分对象的功能性质。但是,都可以访问直接
basetwo.\uuuu doc\uuuuu
并键入
basetwo(
会起作用,所以在某些情况下设置
\uuu doc\uuu
实际上是有帮助的。
def somefunc(somerandomarg):
    """This is a docstring
    What I am doing is shorthand for __doc__ = "random docstring"
    For partials, you can't do this, so you set it with __doc__"""
    pass