今天為大家?guī)?lái)的內(nèi)容是詳細(xì)講解Python的反射機(jī)制!(含實(shí)例和代碼中的對(duì)與錯(cuò)分析)文中代碼具有不錯(cuò)的參考意義,希望通過(guò)內(nèi)容能夠?qū)Ω魑挥兴鶐椭∠矚g的不忘關(guān)注點(diǎn)贊轉(zhuǎn)發(fā)不迷路哦!!!
一、反射機(jī)制簡(jiǎn)介:
- 通過(guò)字符串的形式導(dǎo)入模塊
- 通過(guò)字符串的形式,去模塊中尋找指定的函數(shù),并執(zhí)行
- 規(guī)定用戶輸入格式 模塊名/函數(shù)名 通過(guò)__import__的形式導(dǎo)入模塊,并通過(guò) hasattr和getattr 檢查并獲取函數(shù)返回值。
相關(guān)方法:
- getattr:--根據(jù)字符串的形式去某個(gè)模塊中尋找東西
- hasattr:--根據(jù)字符串的形式去某個(gè)模塊中判斷東西是否存在
- setattr:--根據(jù)字符串的形式去某個(gè)模塊中設(shè)置東西
- delattr:--根據(jù)字符串的形式去某個(gè)模塊中刪除東西
二、反射機(jī)制初識(shí):
test.py
index.py
代碼執(zhí)行結(jié)果:
實(shí)例:基于反射模擬Web框架路由系統(tǒng)(一)
commons.py
refec_demo.py
實(shí)例:基于反射模擬Web框架路由系統(tǒng)(二)
refec_demo1.py
代碼實(shí)現(xiàn)結(jié)果:
路徑正確時(shí)結(jié)果:
路徑不正確時(shí)結(jié)果:
實(shí)例:基于反射模擬Web框架路由系統(tǒng)(三)
manager.py
order.py
refec_demo2.py
當(dāng)模塊和函數(shù)都存在時(shí),url路徑調(diào)用結(jié)果:
當(dāng)模塊和函數(shù)都不存在時(shí),url路徑調(diào)用結(jié)果:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助!!!






