无法呈现python reST格式docstring

时间:2017-02-01 07:20:15

标签: python format restructuredtext docstring

我正在研究一个python框架,scrapy,我了解到它使用了一种docstring样式,如下所示

class CrawlerRunner(__builtin__.object)
 |  This is a convenient helper class that keeps track of, manages and runs
 |  crawlers inside an already setup Twisted `reactor`_.
 |  
 |  The CrawlerRunner object must be instantiated with a
 |  :class:`~scrapy.settings.Settings` object.
 |  
 |  __init__(self, settings=None)
 |  
 |  crawl(self, crawler_or_spidercls, *args, **kwargs)
 |      Run a crawler with the provided arguments.
 |      
 |      It will call the given Crawler's :meth:`~Crawler.crawl` method, while
 |      keeping track of it so it can be stopped later.

我想知道所有这些特殊字符的作用或含义。我遇到了this article,并且对于reST格式是什么有点模糊。我想知道这个docstring应该如何呈现,所以尝试了这个online renderer,但它没有正确呈现doctstring。似乎它不支持诸如:class:和:meth:

之类的东西

我的问题是

  • 为什么我无法呈现文档字符串。这不是有效的reST格式吗?
  • 是不是应该渲染这种docstring样式?或
    它应该被视为纯文本吗?
  • 如果可以,我该如何渲染?
  • 是否可以在交互式python shell中呈现docstring?

1 个答案:

答案 0 :(得分:1)

  

为什么我无法呈现文档字符串。这不是有效的reST格式吗?

reST有效,但它包含的标记不属于“标准reST”,这是http://rst.ninjs.org/渲染器所支持的内容(uses rst2html.py,由Docutils提供)。

vector:class:是Sphinx文档生成器可以理解的标准reST的附加示例。请参阅http://www.sphinx-doc.org/en/stable/markup/index.htmlhttp://www.sphinx-doc.org/en/stable/domains.html

以下标记,

:meth:

呈现为指向:class:`~scrapy.settings.Settings` 类文档的超链接。请参阅https://doc.scrapy.org/en/1.3/topics/api.html#scrapy.crawler.CrawlerRunner

  

是不是应该渲染这种docstring样式?还是应该以纯文本形式阅读?

     

如果可以,我该如何渲染?

文档字符串应该由Sphinx处理。

  

是否可以在交互式python shell中渲染docstring?

我认为可以实现使控制台输出更好的东西,但我不知道有任何工具或库可以做到这一点。