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()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转自:http://www.cnblogs.com/feixuelove1009/p/5576206.html,只...
    think_lonely阅读 7,235评论 1 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,224评论 19 139
  • 如果说你在下午的四点来,从三点钟开始,我就开始感觉很快乐,时间越临近,我就越来越感到快乐。到了四点钟的时候,我就会...
    小小小小米77阅读 2,701评论 0 0
  • 我不知道人是不是总是会遗憾自己没做过的事,但我知道人一定会遗憾自己本可以做好但却没做到的事。这种遗憾像心结,在心里...
    段静静阅读 1,558评论 0 0
  • 此刻的银杏树被定格在每个人的画面中,可那散落在地的孤独过后是否会被想起 谢谢这个季节遇到你,而让我的心情回归最初的...
    易心携同阅读 1,778评论 0 0

友情链接更多精彩内容