我目前正在开发一个Flask应用程序。我想将.py文件组织到不同的文件夹中。这是一个可以描述所有文件夹的三个。
Application
|_Interpreter
|_
__init__.py
parser.py
|_ Classes
|_ Interfaces
__init__.py
Expressions.py
|_ Operations
__init__.py
Arithmetic.py
Operations.py
|_ SymbolTable
__init__.py
Symbol.py
Symbol_table.py
__init__.py
Driver.py
据我所知,__init__.py
使文件夹成为一个模块,然后您应该能够从其他文件导入它们。例如,我想从Operations.py文件导入Expressions.pyfrom Classes.Interfaces.Expression import Expression
问题是我一直得到ModuleNotFoundError: No module named 'Classes'
我试过使用
import sys
sys.path.append('..')
但它并不总是起作用,在给定的例子中,它不起作用。我知道我可以在计算机中附加文件的路径,但我认为如果我想将应用程序部署到服务器,这会产生一些问题。导入模块的最佳选项是哪一个?
是否尝试将__init__.py
添加到应用程序文件夹?
那么您可能需要使用from Application.Classes.Interfaces.Expression import Expression
。