Python 反射

反射: 通過字符串的形式來導入模塊,并以字符串的形式執行函數

#例: 根據變量temp, 來導入模塊 sys。這樣實現了通過字符串的形式來導入模塊
# 通過 __import__ 函數來獲取字符串中定義的模塊

temp = 'sys'
model1 = __import__(temp)

print model1.path

# 例:以字符串的形式執行函數,
# 通過 getattr 函數來獲取字符串定義的模塊中的方法。
func = 'path'
Func = getattr(model1, func)

for i in Func:
    print i

應用,大部分應用在web框架中。

# 目錄結構: 當前目錄下有backend項目包
#- backend
#   - __init__.py
#   - account.py        # 里邊有 def login(): 函數
#- __init__.py
#- index.py #當前文件

# 輸入 account/login
date = raw_input('輸入地址: ')

lis = date.split('/')

userspance = __import__('backend.' + lis[0])

model = getattr(userspance, lis[0])

func = getattr(model, lis[1])

func()
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 轉自:http://www.cnblogs.com/feixuelove1009/p/5576206.html,只...
    think_lonely閱讀 2,520評論 1 2
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,933評論 18 139
  • 如果說你在下午的四點來,從三點鐘開始,我就開始感覺很快樂,時間越臨近,我就越來越感到快樂。到了四點鐘的時候,我就會...
    小小小小米77閱讀 318評論 0 0
  • 我不知道人是不是總是會遺憾自己沒做過的事,但我知道人一定會遺憾自己本可以做好但卻沒做到的事。這種遺憾像心結,在心里...
    段靜靜閱讀 205評論 0 0
  • 此刻的銀杏樹被定格在每個人的畫面中,可那散落在地的孤獨過后是否會被想起 謝謝這個季節遇到你,而讓我的心情回歸最初的...
    易心攜同閱讀 259評論 0 0