したがって、Javaでは、取得するパラメーターの数がわからない場合は、このようなことを行うことができます。
private void testMethod(String... testStringArray){
}
Pythonでこのようなことをするにはどうすればよいですか?
私はこのようなことをすることができないので?
def testMethod(...listA):
可変長引数リストについて話しているのですか?もしそうなら、を見て*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を配置すると、その関数は任意の数の匿名および/またはキーワード引数を受け入れることができます。
あなたが望むように聞こえます:
def func(*args):
# args is a list of all arguments
これは、他の多くのそのような情報と同様に、Pythonチュートリアルでカバーされています。これを読む必要があります。