1、反射的小例子:

>>> import json 
>>> dir(json)             
['JSONDecoder', 'JSONEncoder', '__all__', '__author__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '__version__', '_default_decoder', '_default_encoder', 'decoder', 'dump', 'dumps', 'encoder', 'load', 'loads', 'scanner']

 如上所示,dir 是一个内置的反射函数,可以列出对象的属性和方法

2、  

  通过字符串的形式,导入模块
  通过字符串的形式,去模块中寻找指定的函数,并执行

反射:(在内存中操作,对原来的文件没有影响)
		根据字符串的形式去某个模块中寻找东西
		根据字符串的形式去某个模块中判断是否存在
		根据字符串的形式去某个模块中设置东西
		根据字符串的形式去某个模块中删除东西
		
		根据字符串的形式去对象(某个模块)中操作成员

3、模块导入升级版

inp = input("请输入模块名:")
inp_func = input("请输入要执行的函数名:")
dd = __import__(inp)# __import__ 用于以字符串的形式导入模块

target_func = getattr(dd, inp_func)# getattr  用于以字符串的形式去某个模块中寻找函数

ret = target_func()
print(ret)
通过字符串带入模块

相关文章: