2009-04-01 15 views
4

私は、cmdのPythonモジュールを使用するスクリプトを持っています。 cmdモジュールは、ヘルプテキストとして3重引用符で囲まれた複数の文字列を使用します。このようなもの複数行の文字列のインデント

def x(self, strags = None): 
    """class 
    help text here 
    and some more help text here""" 

スクリプトを実行すると、コマンド 'help x'が文字列を出力します。ただし、改行は最後の2行の前にも印刷されます。私はこれらの行をインデントしないことでこれを克服できますが、それは自分のコードをugl {y、ier}にします。

このインデント問題を解決するにはどうすればよいですか?どのようにプロのPythonのコーダーはこれを処理するのですか?

答えて

2

個人的に私はPEP 8に従うことを試みますが、これは読者をDocstring ConventionsのためにPEP 257と呼んでいます。それは、マルチラインのドキュメンテーションのセクション全体を持っています。

+0

これは常に良いアイデアですが、これで問題は解決しません。 docstringで通常発生するインデントトリミングは、cmdモジュールのヘルプテストでは発生していないようです。これを回避する方法がなければ、モジュールのバグかもしれません。 –

1

私はこのように、一貫性のインデントを持っていることによってそれを処理したい:

def x(self, strags = None): 
    """ 
    class 
    help text here 
    and some more help text here 
    """ 

確かに、それは二行以上かかりますが、それはまた、docコメントが非常に目立つことによって、(私の意見では)明確さを注入しますよく

関連する問題