你可以阻止烧瓶运行
file4.py
只需不在应用程序中导入即可。但是,如果你想保留
file4.py
在您的项目中,为了将来在没有Flask执行的情况下使用,您可以将其移动到不包含在Flask应用程序上下文中的其他目录。
以下是一个结构化响应,您可以将其直接复制粘贴到Stack Overflow:
如何排除特定文件在Flask应用程序中运行?
我有一个Flask应用程序,其目录结构如下:
src/
file1.py
file2.py
file3.py
file4.py
我的应用程序使用一些可选的机器学习模型,这些模型是导入并在中运行的
file4.py
。这是的简化版本
file4.py
:
# file4.py
import some_ML_model
model_init = some_ML_model()
# Functions that run the model
我注意到了
file4.py
大大降低了我的Flask应用程序的速度。我不想删除它,因为我将来可能需要它。我只是想阻止Flask逃跑
file4.py
当我启动应用程序时。
实现这一目标的最佳实践是什么?
解决方案
防止
file4.py
从运行开始,不要将其导入到Flask应用程序中。你也可以移动
file4.py
到另一个目录,以确保它不会被意外包含。以下是如何组织文件:
src/
file1.py
file2.py
file3.py
optional_ml/
file4.py
通过移动
file4.py
到
optional_ml/
目录中,您确保它不会由Flask执行,除非您显式导入它。这样,
file4.py
保留在项目中以供将来使用,但不会影响Flask应用程序的性能。
然后,您可以在主Flask应用程序代码中更新导入以排除
file4.py
.
例如,在
app.py
或者无论您在哪里管理Flask应用程序初始化,请确保只导入必要的文件:
# app.py
from src import file1
from src import file2
from src import file3
# Do not import file4 to prevent it from running
# from src import file4 # This line should be commented out or removed
if __name__ == '__main__':
app.run()
通过遵循这种方法,您可以
file4.py
在项目中,而不会无意中运行它,从而保持应用程序的性能。
这将帮助您组织Flask应用程序并防止
file4.py
从没有