1

重複の可能性:
Pythonでdefを使用して複数のパラメーターを使用する

可変数のパラメーターを含む関数呼び出しを行う必要があります-パラメーターはリストに含まれています。

2つのアイテムのリストについては、次のように「表示」されます。

TheFunction(item1, item2)

そして3つのアイテムのリストのために:

TheFunction(item1, item2, item3)

これを行うための簡単でpythonicな方法はありますか?getattr()たとえば、を使用したある種のループ?

リストのサイズは可変です。コードで引数として提示されたリストだけを使用して関数を呼び出すことができる必要があります。具体的には、SUDSでclient.service.method()関数を呼び出して、Webサービスメソッドを呼び出しています。この関数は可変数の引数を受け入れます。可変数の引数で呼び出すのに問題があります。

4

1 に答える 1

3

これを試して、、

TheFunction(*N_items)

In [88]: def TheFunction(*N_items):
   ....:     print N_items
   ....:

In [89]: TheFunction(1)
(1,)

In [90]: TheFunction(1,2,3)
(1, 2, 3)

In [91]: TheFunction(1,2,3,4,5)
(1, 2, 3, 4, 5)

電話でも*あなたを助けます...

In [92]: l = [1,2,3,4,5]

In [93]: TheFunction(*l)
(1, 2, 3, 4, 5)

In [94]: l = [1,2]

In [95]: TheFunction(*l)
(1, 2)
于 2012-07-18T09:29:34.683 に答える