问题描述
我最近了解到的关于python的最酷的事情之一就是字典可以接受这样的参数:
select
COALESCE(visit.petId,vaccination.petId) as petId,GREATEST(visit.date,vaccination.date) as date
from visit
FULL JOIN vaccination on vaccination.petId = visit.petId
我如何制作一个以相同方式接受参数并将其传递给字典的函数?我不想将红色,蓝色或黄色声明为单个参数。理想情况下,它将采用任何类型的命名参数。
我已经尝试过:
(select petId from vaccination)
union all
(select petId from visit)
...而且不喜欢如何命名参数。
我还以为是在扩展字典定义,所以我仍然可以使用字典的 init ,但是我也不知道该怎么做。
解决方法
我认为您在*args
上走的路正确,但我想您要使用的是**kwargs
。
def make_dict(**kwargs):
return dict(**kwargs)
myDict = make_dict(red=2,cyan=43)
print(myDict)
它应该打印{'red': 2,'cyan': 43}