2016-12-10 10 views
3

Sphinx拡張機能NumpyDocを使用すると、ドキュメントが文書化しているコードと自動的に一致するかどうかを自動的に確認する方法はありますか?コードと文書が一致することを確認する

たとえば、次のドキュメントが原因タイプミスにコードが一致しません:

def myfunc(apples, bears): 
""" 
    Parameters 
    ---------- 
    apples : int 
     The number of apples. 
    beards : int 
     The number of bears to eat the apples. 
""" 

スフィンクスやNumpyDocは、このエラーすることはできますか?

答えて

0

これはNumpyDocまたはSphinxに組み込まれていますが、NumpyDoc's scraping abilitiesを使用すると可能です。希望の機能を実現するコードスニペットを次に示します。

import inspect 

from numpydoc.docscrape import FunctionDoc 

def myfunc(apples, bears): 
    """ 
     Parameters 
     ---------- 
     apples : int 
      The number of apples. 
     beards : int 
      The number of bears to eat the apples. 
    """ 

doc = FunctionDoc(myfunc) 
argspec = inspect.getargspec(myfunc) 

# check for basic spelling errors 
for a_i, arg in enumerate(argspec.args): 
    if arg != doc["Parameters"][a_i][0]: 
     print("%s != %s" %(arg, doc["Parameters"][a_i][0])) 
関連する問題