我不知道该如何解释这个问题。。。在
但我在试着运行一个主脚本(主.py),它将导入多个库(如“os”模块),并且此脚本应导入另一个子脚本(儿童.py). 在
问题是儿童.py'必须使用此'os'模块,但它无法从'主.py'. 在
我想逃跑主.py'然后得到:
NameError: name 'os' is not definied.
我的目录结构:
main/
|__ main.py
|__ sub/
|__ child.py
|__ __init__.py
在[主.py]内容:
^{2}$在[儿童.py]内容:
def function:
os.system('clear')
<more code that require 'os' module>
我错过了什么? 我正在尝试从中导入所有库主.py'为了避免在运行另一个脚本时等待太久(不希望他们在之后导入大量库,我希望从主文件导入所有内容)。在
这不是它的工作原理。您应该在实际使用它的模块中导入一个模块,并且只在那里。在
因此您需要导入子模块中的
os
模块才能使用它:如果不在
^{pr2}$main.py
中实际使用os
,则不应该在那里导入它:同样是@user10987432指出的;如果您担心
import
语句会减慢代码的速度,那么您的优先级就混淆了。这不仅是一种过早优化的形式,而且最重要的是,很难想象一个import
语句是瓶颈的时候,也就是说,它可能不可能,而且是一个没有问题的问题。在我认为您的代码中最初没有import os行,但是您在源代码中更正了这一点并重新导入了文件。在
问题是Python缓存模块。如果导入不止一次,则每次返回同一模块时-它不会被重新读取。你第一次导入时犯下的错误将继续存在。在
重新导入图像工具.py文件编辑后,必须使用重新加载(imtools)。在
相关问题 更多 >
编程相关推荐