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

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

python下 如何科學設計一個命令列表執行對應流程?

python下 如何科學設計一個命令列表執行對應流程?

嗶嗶one 2019-02-23 19:58:08
最近搞微信機器人,需要設計一個命令列表對應執行一系列程序,比如要:查積分 findScore()加積分 addScore()減積分 subtractScore()踢人 kick()設置誰為黑名單 blacklist() 然后想要用正則表達式來匹配,但是正則表達式要2行代碼才行,用if elif的話非要寫成def 才能一行寫下,而且綁定流程也很麻煩,剛學python只知道基本的語法,不知道python的技巧,直覺上覺得應該可以吧命令和執行流程變成key->value的形式,但是又不知道用python應該怎么優雅的寫出來,所以想請教各位大神,各顯神通哇~!
查看完整描述

2 回答

?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

同樓上, 用dic

def get_option():
    return "逗你玩"


def find_score():
    pass


def add_score():
    pass


def sub_tract_score():
    pass


def kic():
    pass


def blacklist():
    pass


def main(op):
    op_dic = {
        "查積分": find_score,
        "加積分": add_score,
        "減積分": sub_tract_score,
        "踢人": kic,
        "黑名單": blacklist,
    }
    op = op_dic.get(op)
    if op:
        return op()
    else:
        print("查無此令")
        
        
if __name__ == "__main__":
    option = get_option()
    main(option)
查看完整回答
反對 回復 2019-03-04
?
MM們

TA貢獻1886條經驗 獲得超2個贊

用 dict ?

actions_d = {
'查積分': findScore,
'加積分': addScore,
'減積分': subtractScore,
'踢人': kick,
'設置誰為黑名單': blacklist,
}
actions_d.get(action, default_action)()
查看完整回答
反對 回復 2019-03-04
  • 2 回答
  • 0 關注
  • 526 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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