Sie können alle Argumente erhalten, von denen Sie nicht wissen, wie viele kommen werden.
python
def test(*args, **kwargs):
print(args)
print(kwargs)
test(1, 2, 'hoge')
output
(1, 2, 'hoge')
{}
** Geben Sie kwargs mit dict () ein.
python
def test(*args, **kwargs):
print(args)
print(kwargs)
test(1, 2, 3, 4, 5, col=4, row=5)
output
(1, 2, 3, 4, 5)
{'col': 4, 'row': 5}
Es wird ein leeres Tupel () und ein leeres Diktat () sein.
python
def test(*args, **kwargs):
print(args)
print(kwargs)
test()
output
()
{}
Sie können das empfangene Argument so übergeben, wie es ist
python
def func1(a, b, c=2):
d = a + b * c
return d
def func2(*args, **kwargs):
d = func1(*args, **kwargs)
return d
print(func2(1, 2))
print(func2(1, 2, c=5))
output
5
11
Wenn die Anzahl von * gleich ist, kann der Name des Arguments frei geändert werden. * A, * hoge usw. können anstelle von * args verwendet werden, und ** b, ** fuga usw. können anstelle von ** kwargs verwendet werden.
python
def test(*a, **b):
print(a)
print(b)
test(1, 2, 3, 4, 5, col=4, row=5)
output
(1, 2, 3, 4, 5)
{'col': 4, 'row': 5}
Lass es uns versuchen!
Recommended Posts