Python之路第六天,基礎 8 反射

2022-08-02 06:12:10 字數 945 閱讀 7386

利用字串的形式去物件(模組)中操作(尋找/檢查/刪除/設定)成員(函式)。

python中反射用到的4個內建函式:getattr(),setattr(),hasattr(),delattr()

直接上例子

偽造web框架的路由系統:

目錄結構:

.

├── index.py

└── lib

├── account.py

├── commons.py

└── manager.py

# account.py

def login():

print('炫酷登入頁面')

def logout():

print('炫酷退出頁面')

# manager.py

def order():

print('炫酷的訂單頁面')

# common.py

def home():

print('炫酷主頁面')

# index.py

def run():

inp = input('請輸入url:')

m, f = inp.split('/')

# import lib.account

obj = __import__("lib."+ m, fromlist=true)

if hasattr(obj, f):

func = getattr(obj, f)

func()

else:

print('404')

if __name__ == '__main__':

run()

執行:請輸入url:account/login

炫酷登入頁面

請輸入url:account/log

404

java基礎第六天

物件導向思想 面向過程 一步一步做事情 物件導向 找物件來做事情,物件本身包含做事情的步驟 特點 角色發生轉變,執行者變成指揮者 特徵 封裝 繼承多型 類和物件 類 對事物的描述 物件 這一類事物的實體 例項 物件導向 我們需要操作實實在在的物件 定義類的步驟 1.類名 2.成員變數 屬性 通常的叫...

第六天 路由基礎

引入要顯示的元件 import helloworld from components helloworld 使用路由中介軟體 vue.use router 宣告vue路由的例項 export default new router 3.在mian.js中引入剛剛改好的index.js檔案 import...

python基礎 第六天(函式詳解)

目錄 1 函式即是物件 2 變數的作用域 全域性變數和區域性變數 3 引數的傳遞 4 淺拷貝與深拷貝 5 引數的幾種型別 6 lamda函式 7 eval 函式 8 遞迴函式 python中一切都是物件。執行def定義函式後,系統就建立了相應的函式物件。全域性變數 1 在函式和類定義之外宣告的變數,...