Python如何使用函式做字典的值
阿新 • • 發佈:2020-01-09
這篇文章主要介紹了Python如何使用函式做字典的值,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
當需要用到3個及以上的if...elif...else時就要考慮該方法進行簡化
通過將函式名稱當做字典的值,利用字典的關鍵字查詢,可以快速定位函式,進行執行
【場景】使用者查詢資訊,輸入fn查詢,執行對應函式
# 簡單用十個函式模擬查詢函式 def fun1(): print("查詢1") def fun2(): print("查詢2") def fun3(): print("查詢3") def fun4(): print("查詢4") def fun5(): print("查詢5") def fun6(): print("查詢6") def fun7(): print("查詢7") def fun8(): print("查詢8") def fun9(): print("查詢9") def fun10(): print("查詢10")
傳統方法 if...elif...elif...else(寫起來很麻煩)
choice = input("請輸入查詢內容fn:") if choice == 'f1': fun1() elif choice == 'f2': fun2() elif choice == 'f3': fun3() elif choice == 'f4': fun4() elif choice == 'f5': fun5() elif choice == 'f6': fun6() else: fun10() """ 請輸入查詢內容fn:f1 查詢1 """
將函式當做字典的值
# 建立字典 info = {'f1': fun1,'f2': fun2,'f3': fun3,'f4': fun4,'f5': fun5,'f6': fun6,'f7': fun7,'f8': fun8,'f9': fun9,'f10': fun10} choice = input("請輸入查詢內容fn:") info_value = info.get(choice) print(info_value) if info_value: info_value() else: print('輸入異常') """ 請輸入查詢內容fn:f11 None 輸入異常 """
獲取字典中的value 使用get()函式,這樣當關鍵字不存在時,返回的值的None,不會導致程式報錯
【總結】遇到連續重複的程式碼編寫時,要思考解決方法,提高程式設計效率,同時增加程式碼的可讀性
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。