问题描述
如何在Python函数中遍历关键字参数? 例如,说我有以下方法:
class Car():
def start_engine(self,key,*,driver=None,passenger=None,gas=None):
for k,v in <ITERATE_OVER_KEYWORD_ARGUMENT>:
if v is not None:
print(f"KEY: {k} VALUE:{v}")
c = Car()
c.start_engine(key,driver="Bob",passenger="Alice")
应打印:
driver: Bob
passenger: Alice
我不想使用**kwargs
,因为我想命名参数。
我不能只打电话给locals()
,因为我还有其他参数。
我想我可以创建一个包含**kwargs
的辅助函数,然后构建一个字典,然后使用所有关键字参数调用该函数,但这似乎很麻烦。
def to_dict(**kwargs):
d = {k:v for k,v in kwargs.items() if v is not None}
return d
那行得通,但似乎是完成我想做的事情的一种奇怪方法。
是否存在一种可接受的方法来遍历关键字参数,还是因为某些原因而使Python变坏了?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)