如果我要创建一个名为的模块,例如imp_mod.py
里面包含了我经常使用的所有(主观使用的)相关模块。
将此模块导入到我的主程序中是否允许我访问其中包含的导入imp_mod.py
?
如果是的话,这会带来什么缺点?
我想一个主要优点是减少导入时间,尽管只节省了几秒钟......
是的,它允许您访问它们。如果您将这些导入放入imp_mod.py
:
from os import listdir
from collections import defaultdict
from copy import deepcopy
然后,您可以在另一个文件中执行此操作,例如,myfile.py
:
import imp_mod
imp_mod.listdir
imp_mod.defaultdict
imp_mod.deepcopy
您关于减少导入时间的看法是错误的,因为发生的情况恰恰相反。 Python 需要导入imp_mod
然后再导入其他模块,而如果您在中导入这些模块,则不需要第一次导入myfile.py
本身。如果您在另一个文件中执行相同的导入,它们将已经在缓存中,因此下一次导入实际上不会花费任何时间。
这里真正的缺点是可读性较差。谁看谁imp_mod.listdir
例如,会问自己这个方法到底是什么以及为什么它与那个方法同名os
模块的方法。当他不得不打开imp_mod.py
只是为了发现这是同样的方法,好吧,他可能会不高兴。我不会。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)