自动编译作为包导入的其他.py文件?



我编写了两个.py文件,并将它们导入到第三个.py文件中使用:

(The top of driver.py)
import wafer_diagram
import LightIV

wafer_diagram.py和LightIV.py包含我在driver.py中使用的函数。然而,每当我有一个清除/重新启动的内核时,我必须运行每个单独的.py文件,否则它们不会在driver.py中定义。当我运行driver.py时,是否有一种方法可以自动执行此操作?我使用Spyder与python 3.8。谢谢!

编辑:澄清一下,在运行wafer diagram.py和LightIV.py之后,我能够毫无问题地使用driver.py中的函数。但是,如果我重新启动内核,然后尝试运行driver.py,就会抛出一个错误,认为这两个模块不存在。

我太傻了!虽然我导入了其他文件,但我没有正确调用它们的函数。例如,对于LightIV.py中的print_struct()函数,我将在driver.py中这样写:

import LightIV
print_struct()

相反,我应该写:进口LightIVLightIV.print_struct ()

我之所以能够在这么长时间内摆脱这种情况,很可能是因为Spyder保存变量的方式。我将运行LightIV.py和wafer_diagram.py, &;saving&;它们的函数,然后在以后使用它们,而不是正确地导入它们。

最新更新