I have a class whose function defined like this. My intention is to send multiple arguments to it .
For testing, I called it as :class_name("argument1","argument2"), and it says: __init__accepts atmost 1 arguments , 3 given
def __init__(self, **options):
for name in options:
self.__dict__[name] = options[name]
What is the proper way to handle this ?
Any suggestions welcome……
You want to use one asterisk instead of two. Double asterisks are for named arguments. There is a nice explanation in the python documentation if you are interested in reading further.
However, from your code I think the real issue is that you are calling your function incorrectly.
You would want to call it like: