I'm trying to write a class which will accept any kwargs.
class testcode():
def check_values(**kwargs):
if "Test1" in kwargs.values():
return function1
elif "Test2" in kwargs.values():
return function2...
...
else:
return function20
test=testcode(Input1="Test1",Something="blablabla",Otherthing="blabalbalbalb2")
As the number of kwarg is not fixed, I may write lots of if/elif, can I use a dict to replace the if/elif/else?
update: @deceze, the reason why I ignore some args is that I want to simulate some AWS API. for example, AWS S3 is using
response = client.list_multipart_uploads(
Bucket='string',
Delimiter='string',
EncodingType='url',
KeyMarker='string',
MaxUploads=123,
Prefix='string',
UploadIdMarker='string'
)
I want to write a class to mock the function. And the when I test, I can return the value based on UploadIdMarker.
class testcode():
def list_multipart_uploads(**kwargs):
if "Test1" in kwargs.values():
return s3_string1
elif "Test2" in kwargs.values():
return s3_string2
...
else:
return s3_string100
test=testcode(Bucket='string',
Delimiter='string',
EncodingType='url',
KeyMarker='string',
MaxUploads=123,
Prefix='string',
UploadIdMarker='Test1'")