码迷,mamicode.com
首页 > 编程语言 > 详细

python - 反射

时间:2016-06-11 17:24:30      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

1.利用反射导入模块

obj = __import__("commons")  #同级目录中的commons.py
obj.login()  #执行commons模块中的login函数

2.

commons.py文件内容:

def login():
    print(登录页面)

 

index.py文件内容:

import commons

def run():
    inp = input(输入URL:)
    #利用字符串的形式去对象(模块)中操作(寻找/检查)成员,反射
    # delattr()
    # setattr()
    if hasattr(commons,inp):
        func = getattr(commons,inp)
        func()
    else:
        print(404)

if __name__ == __main__:
    run()

结果:

技术分享

 

 

3.反射

commons.py文件内容

def login():
    print(登录页面)

index.py文件内容

def run():
    inp = input(请输入url:)
    m,f = inp.split(/)   #m相当于模块commons名称,f相当于输入commons模块中函数的名称,例如:login()
    obj = __import__(m)
    if hasattr(obj,f):
        func = getattr(obj,f)
        func()
    else:
        print(404)
if __name__ == __main__:
    run()

运行结果:

技术分享

 

python - 反射

标签:

原文地址:http://www.cnblogs.com/pangguoping/p/5575470.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!