私は私の関数に引数のリストを与えるための最良の方法を探しています:Python関数の長いパラメータリスト
def myFunc(*args):
retVal=[]
for arg in args:
retVal.append(arg+1)
return "test",retVal
問題は、あなたがにパラメータの長いリストを持っている場合、それは非常に迷惑になることですパラメータのリスト全体を2回書く必要があるため、関数に渡す必要があります。完全な名前を持つパラメータが10個以上ある場合は、実際に重くなります。
w=alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota
test,w=myFunc(w)
しかし、私は何をする必要があり土台:
test,alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota=myFunc(alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota)
は、だから私はこのような何かについて考え
alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota=w
はのリストを与えると戻って取得する任意の短い方法はありますパラメータを関数から取得します。 パラメータを直接変更するための関数へのポインタを与えますか?単に関数が辞書を返すよう
w=alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota
test,w=myFunc(w)
# And directly get my parameters modified to be able to print them :
print alpha,[...],iota
チップをありがとう。あなたのアイデアに従ったのは以下のとおりです: 'アルファ、ベータ、ガンマ、デルタ、イプシロン、ゼータ、イータ、シータ、イータ= 1,2,3,4,5,6,7,8,9 dict = {'アルファ'、アルファ、ベータ、ベータ、ガンマ、ガンマ、デルタ、デルタ、イプシロン、イプシロン、ゼータ、ゼータ、エタ、エタ、 'イオタ':イオタ} のdict = myFuncという(** dictの) ' そして、これは私の新しい機能である: 'デフmyFuncという(**辞書):引数のための RETVAL = [] dict: dict [arg] = dict [arg] +1 return dict' ありがとうございました! – Mibou
1.辞書の名前として 'dict'を使用しないでください。これは' dict'と呼ばれる実際のクラスよりも優先されます。 2. 'd = dict(alpha = alpha、beta = beta、...)'のようなキーワードを使ってdictを定義することができます。これは引用符とコロンのシフトキーの使用をたくさん節約します。 – kindall