2012年1月29日日曜日

python:ドキュメント作成ツール pydoc(1)


pydocは、pythonソースから説明資料を作成するツールです。
pythonソース、クラス、関数のヘッダ部分のコメントからhtml版使用手引きを作成できます。


出力例)


keisan
index
c:\python26\user\keisan.py
keisan.py

○概要
計算モジュール
○修正履歴
20120102 新規作成
20120130 testクラス追加


Modules
      
sys

Classes
      
test

class test
    テスト
Properties
        wa:     たし算の結果
 
Methods defined here:
__init__(self)
#コンストラクタ
wa(self, L)

Functions
      
main()
tasizan(L)
たし算
Args:
        L:      値のリスト
Returns:
        和
Attentions:
        値が数値以外の場合、Falseを返却
Samples:
        >>> tasizan([1, 2])
        3
        >>> tasizan(["a", 2])
        False


上記を作成した元のpythonソースは以下のとおりです。



# -*- encoding=sjis -*-
"""
keisan.py


○概要
計算モジュール
○修正履歴
20120102 新規作成
20120130 testクラス追加


"""
import sys
class test():
"""テスト
Properties
wa: たし算の結果
"""
#コンストラクタ
def __init__(self):
self.wa = 0

def wa(self, L):
self.wa = tasizan(L)

def tasizan(L):
"""たし算
Args:
L: 値のリスト
Returns:

Attentions:
値が数値以外の場合、Falseを返却
Samples:
>>> tasizan([1, 2])
3
>>> tasizan(["a", 2])
False
"""
if not isinstance(L, list): return False
for i in L:
if not i.isdigit(): return
return sum(L)

def main():
m = sys.argv[1:] #引数の配列

#関数を直接呼ぶ方法
print "tasizan : ", tasizan(m)

#クラスを使う方法
p = test()
print p.wa(m)

if __name__ == '__main__': main()



次回はpydocをどのように使ったら上記のhtmlドキュメントのできるかをお知らせします。 

0 件のコメント:

コメントを投稿