In Java verwenden Sie Konstruktoren, um Klassen zu überladen und mehrere Eingabeparameter zuzulassen. In Python können Sie kwargs verwenden, um ein ähnliches Verhalten zu erreichen.
java-beispiel: https://beginnersbook.com/2013/05/constructor-overloading/
python Beispiel:
class Robot():
# name is an arg and color is a kwarg
def __init__(self,name, color='red'):
self.name = name
self.color = color
red_robot = Robot('Bob')
blue_robot = Robot('Bob', color='blue')
print("I am a {color} robot named {name}.".format(color=red_robot.color, name=red_robot.name))
print("I am a {color} robot named {name}.".format(color=blue_robot.color, name=blue_robot.name))
>>> I am a red robot named Bob.
>>> I am a blue robot named Bob.
Das ist nur eine andere Art, darüber nachzudenken.
8 Stimmen
Eine bemerkenswert prägnante Erklärung aquí : "* sammelt alle Positionsargumente in einem Tupel", "** sammelt alle Schlüsselwortargumente in einem Wörterbuch". Das Schlüsselwort ist sammelt .