Python如何使用函數(shù)做字典的值
這篇文章主要介紹了Python如何使用函數(shù)做字典的值,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
當(dāng)需要用到3個及以上的if...elif...else時就要考慮該方法進行簡化
通過將函數(shù)名稱當(dāng)做字典的值,利用字典的關(guān)鍵字查詢,可以快速定位函數(shù),進行執(zhí)行
【場景】用戶查詢信息,輸入fn查詢,執(zhí)行對應(yīng)函數(shù)
# 簡單用十個函數(shù)模擬查詢函數(shù)
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")
傳統(tǒng)方法 if...elif...elif...else(寫起來很麻煩)
choice = input("請輸入查詢內(nèi)容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()
"""
請輸入查詢內(nèi)容fn:f1
查詢1
"""
將函數(shù)當(dāng)做字典的值
# 創(chuàng)建字典
info = {'f1': fun1,
'f2': fun2,
'f3': fun3,
'f4': fun4,
'f5': fun5,
'f6': fun6,
'f7': fun7,
'f8': fun8,
'f9': fun9,
'f10': fun10}
choice = input("請輸入查詢內(nèi)容fn:")
info_value = info.get(choice)
print(info_value)
if info_value:
info_value()
else:
print('輸入異常')
"""
請輸入查詢內(nèi)容fn:f11
None
輸入異常
"""
獲取字典中的value 使用get()函數(shù),這樣當(dāng)關(guān)鍵字不存在時,返回的值的None,不會導(dǎo)致程序報錯
【總結(jié)】遇到連續(xù)重復(fù)的代碼編寫時,要思考解決方法,提高編程效率,同時增加代碼的可讀性
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python打印當(dāng)前文件的絕對路徑并解決打印為空的問題
這篇文章主要介紹了python打印當(dāng)前文件的絕對路徑并解決打印為空的問題,文中補充介紹了python中對文件路徑的獲取方法,需要的朋友可以參考下2023-03-03
Python不使用int()函數(shù)把字符串轉(zhuǎn)換為數(shù)字的方法
今天小編就為大家分享一篇Python不使用int()函數(shù)把字符串轉(zhuǎn)換為數(shù)字的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
python利用Excel讀取和存儲測試數(shù)據(jù)完成接口自動化教程
這篇文章主要介紹了python利用Excel讀取和存儲測試數(shù)據(jù)完成接口自動化教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04
Python實現(xiàn)提取圖片中顏色并繪制成可視化圖表
今天小編來為大家分享一個有趣的可視化技巧,就是如何利用Python語言實現(xiàn)從圖片中提取顏色然后繪制成可視化圖表,感興趣的可以嘗試一下2022-07-07

