3

したがって、Javaでは、取得するパラメーターの数がわからない場合は、このようなことを行うことができます。

private void testMethod(String... testStringArray){

}

Pythonでこのようなことをするにはどうすればよいですか?

私はこのようなことをすることができないので?

def testMethod(...listA):
4

2 に答える 2

7

可変長引数リストについて話しているのですか?もしそうなら、を見て*argsください**kwargs

この基本ガイドPythonで*argsと**kwargsを使用する方法を参照してください

[1]からの2つの短い例:

使用*args

def test_var_args(farg, *args):
    print "formal arg:", farg
    for arg in args:
        print "another arg:", arg

test_var_args(1, "two", 3)

結果:

formal arg: 1
another arg: two
another arg: 3

および使用**kwargs(キーワード引数):

def test_var_kwargs(farg, **kwargs):
    print "formal arg:", farg
    for key in kwargs:
        print "another keyword arg: %s: %s" % (key, kwargs[key])

test_var_kwargs(farg=1, myarg2="two", myarg3=3)

結果:

formal arg: 1
another keyword arg: myarg2: two
another keyword arg: myarg3: 3

このSOの質問からの引用*argsと**kwargsはどういう意味ですか?

関数定義の引数リストの最後の項目として*argsおよび/または**kwargsを配置すると、その関数は任意の数の匿名および/またはキーワード引数を受け入れることができます。

于 2012-07-18T21:03:44.850 に答える
6

あなたが望むように聞こえます:

def func(*args):
      # args is a list of all arguments

これは、他の多くのそのような情報と同様に、Pythonチュートリアルでカバーされています。これを読む必要があります。

于 2012-07-18T21:03:35.803 に答える