Unlimited Keyword Arguments

def calculate(**kwargs):
	print(kwargs)
		
calculate(add=3, multiply=5)

----------------------------------
{'add': 3, 'multiply': 5} => dictionary

	
def calculate(**kwargs):
	for key, value in **kwargs.items():
		print(key)
		print(value)
		

calculate(add=3, multiply=5)

----------------------------------
add
3
multiply
5
	
def calculate(**kwargs):
	print(kwargs["add"])
		

calculate(add=3, multiply=5)

----------------------------------
3

	

Example

def calculate(n, **kwargs):
	n += kwargs["add"]
	n *= kwargs["multiply"]
	print(n)

calculate(2, add=3, multiply=5)

---------------------------------------

25

Create a class with **kwargs

class Car:
	def __init__(self, **kw):
		#self.make = kw["make"]
		#self.model = kw["model"]
		self.make = kw.get("make")
		self.model = kw.get("model")
		self.color = kw.get("color")
		self.seats = kw.get("seats")

my_car = Car(make="Nissan", model="GT-R")
print(my_car.make)
print(my_car.model)
print(my_car.color)
print(my_car.seats)

---------
Nissan
GT-R
None
None

TKinter