Ich denke an die Verwendung von **kwargs
auf ungewöhnliche Weise: als Datenlieferant und nicht als überlastungsersetzendes Werkzeug. Auf diese Weise sollten alle Schlüsselwortargumente von einem Typ sein, z.B. speziell geformte Tupel, und auf keinen Fall anders. Zum Beispiel:
class SomeClass(object):
'''All **kwargs should be in ("string", 1, True) form'''
def __init__(self, some_param, **kwargs):
self.param = some_param
for arg in kwargs.itervalues():
if not isinstance(arg[0], str):
...
self.some_dict = kwargs
Ist das in Ordnung so? Ich fühle mich... seltsam, es scheint unkanonisch.