[英]Use an expression as keyword in python function arguments
我必須像這樣在python中調用一個函數
job = scheduler.add_job(job_func, 'interval', minutes=10, id=req_json['job_id'], replace_existing=True)
我想根據請求參數傳遞自定義間隔,例如分鍾/秒/等,所以我嘗試了
job = scheduler.add_job(job_func, 'interval', interval_[1]=float(interval_[0]), id=req_json['job_id'], replace_existing=True, args=[req_json])
其中interval_ = "10 seconds".split(' ')
我該怎么做呢?
字典解壓**kwargs
可用於將關鍵字參數傳遞給函數
kwargs = {interval_[1]: float(interval_[0])}
job = scheduler.add_job(job_func, 'interval', id=req_json['job_id'], replace_existing=True, args=[req_json], **kwargs)
例如
kwargs = {'a': 1, 'b': 2}
foo(**kwargs)
相當於
foo(a=1, b=2)
使用此方法的優點是您可以動態設置字典中的鍵,因此可以動態設置傳遞給函數的關鍵字參數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.