5

http://docs.python.org/tutorial/controlflow.htmlで説明されているとおり :

79 文字を超えないように行を折り返します。

通常、80 行目でブレークラインを使用しますが、例として、多くの引数を必要とする関数がある場合があります。

extractor.get_trigger_info(cur,con,env,family,iserver,version,login,password,prefix,proxyUser,proxyPass,proxyServer,triggerPage,triggerInfo)

では、Python コーディング スタイルのガイドラインを維持するために、どのようなアドバイスを与えることができますか? 多くの引数を持つ関数のベスト プラクティスは何ですか?

前もって感謝します。

4

2 に答える 2

6

このような質問に対する決定的なリファレンスはPEP 8です。PEP 8 では、好きな場所で自由に改行できます (2 項演算子の後で改行し、括弧内で暗黙の行継続を使用する場合)。行を改行すると、通常、次の行は左括弧の後の列から始まります。

def func_with_lots_of_args(arg1, arg2, arg3,
                           arg4, arg5):

私の個人的なスタイルは、改行後の各行の長さがほぼ同じになるように配置することです。

def func(arg1, arg2, arg3,
         arg4, arg5, arg6,
         kwd='foobar'):

それよりも:

def func(arg1, arg2, arg3,
         arg4, arg5, arg6, kwd='foobar'):

PEP8 は、このようにする必要があるとは本当に言っていませんが。


余談ですが、これほど多くの位置引数を持つ関数がある場合は、おそらくプログラムの設計を再考する必要があります。

于 2012-09-28T12:23:05.910 に答える
0

私はすることをお勧めします:

  1. pyflakes と pep8.py の 2 つの自動化ツールでコードをきれいに保ちます (そのためのさまざまなテキスト エディター プラグインがあります)。

  2. 最善と思われる方法を選択し、プロジェクト全体でそれを守ります。方法論がすでにある場合は、それに固執します。

于 2012-09-28T13:55:15.427 に答える