python 中怎么动态 import 模块?

2016-03-14 00:32:12 +08:00
 dsp2138
需要根据不同的条件导入不同的模块该怎么做?
现在用__import__()可以导入,但怎么导入某个包下的模块
A 文件夹下 fun.py需要导入子目录 A1 中的 a.py,b,py,c.py 其中 a.py 有 class Auser,b.py 中有 class Buser,c.py 中有 class Cuser,
用 if 判断不同的条件导入分别导入 a.py,b.py.c.py
我怎么该怎么做?

谢谢
我这里是 python3.4
7786 次点击
所在节点    Python
27 条回复
ToughGuy
2016-03-14 16:04:28 +08:00
module = importlib.import_module('os.path')
dsp2138
2016-03-14 16:04:30 +08:00
@loading 本人纯业余选手,主业环境监测!基本没啥业务,何况负责复杂的业务逻辑呢
gx
2016-03-14 22:36:13 +08:00
@mengzhuo meta class
mengzhuo
2016-03-15 10:10:43 +08:00
@gx meta class 为什么叫 meta 有考虑过么?
python 如此动态有趣的基础是什么?

啊!我突然发现了我死的面试题哈哈啊
gx
2016-03-15 16:28:22 +08:00
@mengzhuo

Creating classes dynamically., no magic

FooClass = type('FooClass', (), {})
mengzhuo
2016-03-15 18:07:02 +08:00
@gx
对于懂的人是没啥牛 B 的,
关键是这种代码由数据驱动、啥都是 object 的思想
还有 python 解析器是怎么 import 模块的, global()怎么注入,
面试中级程序算是还行的题目了
╮(╯▽╰)╭
gx
2016-03-16 00:21:59 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/263256

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX