我正在研究Python上的一个项目,我使用不同的脚本。这里的问题是我不知道如何将模块导入到我导入的几个脚本中。例如:
#main.py
import os
import script1
import script2
如何将os模块导入所有其他脚本,这样我就不必在script1.py和script2.py上再次导入操作系统
我是Python新手,谢谢
答案 0 :(得分:1)
这真的不是一个好主意,因为它会很难跟踪哪个模块(文件)需要哪些导入。但是,如果必须,则可以将文件中的import语句数量减少到如下所示:
创建一个文件(例如,imports.py
)并将所有导入放在那里:
import os
import script1
import script2
# etc
然后,对于每个文件,不要复制所有导入,只需写下:
from imports import *
..您将能够从该文件中使用它们。
值得注意的是,这样做实际上不会消除您在每个文件顶部编写导入的必要性。 Python已经确保在执行代码期间,每个模块只导入一次,无论您在代码中包含多少次语句。
根据documentation,关于导入过程:
import语句结合了两个操作;它搜索命名模块,然后将搜索结果绑定到本地范围中的名称。 [...] 导入搜索期间检查的第一个位置是sys.modules。此映射用作先前已导入的所有模块的缓存,包括中间路径。 [...]导入期间,在sys.modules中查找模块名称,如果存在,则关联的值是满足导入的模块,并且该过程完成。