亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

動態地將參數傳遞給 Python 中的函數

動態地將參數傳遞給 Python 中的函數

瀟瀟雨雨 2021-09-14 15:08:19
我想編寫一個代碼來檢查字典中的鍵,如果存在則將其設置為函數作為參數。def myFunction(*args, **kwargs):    # do stuffs    if('name' in kwargs):        thisTitle = kwargs.pop('name')            print(thisTitle)    ...    return thisTitlet = {}if 'name' in t.keys()     and 'param1' in t.keys()     and 'param2' in t.keys():    res = myFunction(name      = t['name'],                      myparam1  = t['param1'],                     secondPar = t['param2'])elif 'name' in t.keys()     and 'param1' in t.keys():    res = myFunction(name=t['name'],                      myparam1=t[param1])elif 'name' in t.keys():    res = myFunction(name=t['name'])如果我有 10 個參數怎么辦?一定會有更好的辦法。
查看完整描述

2 回答

?
蕪湖不蕪

TA貢獻1796條經驗 獲得超7個贊

我還建議使用default論點 onpop而不是檢查是否存在:thisTitle = kwargs.pop('name', default); 所以你不要同時做 ain和 a pop。

if('name' in kwargs):
    thisTitle = kwargs.pop('name')

變成:

thisTitle = kwargs.pop('name', None)

除非從字典中刪除鍵是必需的效果,否則使用get而不是更好pop

thisTitle = kwargs.get('name', None)

當未提供關鍵字參數時,您的函數將返回None而不是生成 a 。NameErrorname


查看完整回答
反對 回復 2021-09-14
  • 2 回答
  • 0 關注
  • 241 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號