2

Pythonで記述されたRESTAPIの有用なドキュメントを生成したいと思います。

私はそれがこのようなものであるべきだと想像します:

'''
/kittens/
This method creates kittens in the browser

HTTP Params:
    format(default=json): The format in which kittens will be generated.
    count(default=10): The number of kittens to generate.

Returns:
    A list of kittens.
'''

私の構文は明らかに次のとおりです。

program = dict
dict = repeated(name:string | name:dict)

この形式を解析して、(たとえば)Python dictを取得したいと思います。できれば、正規表現を使用しないでください。

そのような構文のパーサーはすでに利用可能ですか?
そうでない場合、PythonでDSLを定義および解析する最も簡単な方法は何ですか?

私はreStructuredTextや私が説明したものとは異なるフォーマットを使用したくないことに注意してください。

4

2 に答える 2

0

http://sphinx.pocoo.org/

そのオンラインドキュメントツール。その素晴らしいとそれはあなたが望むことを正確に行います。

于 2011-03-29T14:46:50.230 に答える
0

私はあなたが何を望んでいるのか正確にはわかりませんが、reStructuredTextを使用してあなたの例の情報をキャプチャすることができます:

.. method:: kittens(format="json", count=10)

   Creates kittens in the browser.

   :param format: The format in which kittens will be generated.
   :param count: The number of kittens to generate.
   :return: A list of kittens

Sphinxは、 Docutilsによって定義された基本的なreSTマークアップの拡張であるこの構文を理解します。

于 2011-03-29T19:37:31.347 に答える