python / intermediate
Snippet
Entpacken mit *args und **kwargs
*args ermöglicht es einer Funktion, eine beliebige Anzahl von Positionsargumenten als Tupel zu akzeptieren, während **kwargs beliebige Schlüsselwortargumente als Dictionary akzeptiert.
snippet.py
1
2
3
4
5
6
def versatile_func(required, *args, **kwargs):print(f'Required: {required}')print(f'Additional positional: {args}')print(f'Keyword arguments: {kwargs}')versatile_func('Main', 1, 2, mode='fast', debug=True)
Erklärung
1
*args
Sammelt zusätzliche Positionsargumente in einem Tupel namens 'args'.
2
**kwargs
Sammelt zusätzliche Schlüsselwortargumente in einem Dictionary namens 'kwargs'.