how many argument can be passed in a function while defining it.
As many as you want.
Any number of argument can be put while defining
**kwargd you don’t really need to think about it.
If you want any number of elements as a argument you can use *agrs and if you want to pass any number of key value pair (dictionary) as a argument you can use **kwargs.