通过字符串的形式,导入模块。使用__import__

 In [3]: SYS = __import__("sys")

 In [4]: SYS.path

如果导入模块在多级文件夹下

__import__("**.**.**", fromlist=True)

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

 module_name = __import__("module")
fun = getattr(module_name, "fun_name")
fun()
setattr, getattr, hasattr, delattr

使用getattr实现动态创建对象

现在s1.py文件中,有个Foo类

在s2.py文件中,根据类名,使用getatt获取类对象然后创建对象

 m = __import__("s1", fromlist="True")
#获取类对象
class_name = getattr(m, "Foo")
#创建对象
obj = class_name()

最新文章

  1. CSharpGL(34)以从零编写一个KleinBottle渲染器为例学习如何使用CSharpGL
  2. js中网页高度与宽度那些事
  3. Android时区及语言代码
  4. MyEclipse10安装SVN插件
  5. BZOJ3068 : 小白树
  6. HTTP Get请求URL最大长度
  7. mmap和普通文件读写的区别和比较 & mmap的注意点
  8. hibernate+mysql 8小时问题
  9. AngularJS(1)随笔
  10. 向Git证明自己的身份,Git别名配置
  11. hash定义
  12. lazy load 图片延迟加载 跟随滚动条
  13. 零售业山重水复,全景行柳暗花明——VR全景智慧城市
  14. Linux nc 命令传输文件
  15. JS中const、var 和let的区别
  16. Java基础学习笔记十五 集合、迭代器、泛型
  17. spring源码阅读(2)核心类介绍
  18. C语言中的内存分配
  19. C# 压缩PDF图片
  20. 将字符串存储到注册表中,长度一定是 strlen(text) + 1

热门文章

  1. HDU-2859_Phalanx
  2. Java练习 SDUT-3106_小鑫数数儿
  3. 阿里大数据产品Dataphin上线公共云,将助力更多企业构建数据中台
  4. LeetCode69 Sqrt(x)
  5. SVN更换新的svn链接
  6. 宝塔linux
  7. js实现方块的碰撞检测
  8. CSipsimple最新版本编译
  9. js键盘按下移动元素
  10. H3C PPP MP配置示例三