如何设置自定义python版本以运行flask应用程序?

如何设置自定义python版本以运行flask应用程序?,python,flask,Python,Flask,我的系统中安装了三个python版本: python3.5 python3.6 python3.8 我已经创建了一个烧瓶应用程序,它是waterchain.py 并设置my.flaskenv,如下所示: FLASK_APP=waterchain.py FLASK_ENV=production 现在,当我运行烧瓶时,会出现以下错误: ModuleNotFoundError:没有名为“pymongo”的模块 这是因为尽管我已经在python3.6中安装了所有模块,但是默认情况下,flaskrun选

我的系统中安装了三个python版本:

  • python3.5
  • python3.6
  • python3.8
  • 我已经创建了一个烧瓶应用程序,它是
    waterchain.py

    并设置my
    .flaskenv
    ,如下所示:

    FLASK_APP=waterchain.py
    FLASK_ENV=production
    
    现在,当我运行烧瓶时,会出现以下错误:

    ModuleNotFoundError:没有名为“pymongo”的模块


    这是因为尽管我已经在
    python3.6
    中安装了所有模块,但是默认情况下,flaskrun选择在最新的python版本上运行它,即
    python3.8
    。现在,为了运行所有这些应用程序,我必须重新安装
    python3.8
    的所有pip依赖项。当我做一个
    py-3.6 waterchain.py
    时,一切运行都很顺利。有人能告诉我一种方法来更改我的flask应用程序的默认python运行版本吗?

    最好的方法是使用虚拟环境,就像使用虚拟环境一样,您可以轻松地安装/卸载软件包并管理其版本,从而也可以选择您真正想要使用的版本

    这里有一个指向如何使用虚拟环境的文档的链接:

    此外,我更喜欢使用pipenv,如果您想了解它,您可以在这里找到如何:

    如果你真的希望有人一边解释一边感受它的样子,还可以观看视频教程:


    基本上,在虚拟环境中,您正在为每个项目设置python包,以便您可以使用不同的python版本,或者为不同的项目使用不同版本的包。这是一件易学且非常有用的事情。

    这是否回答了您的问题?“当我做一个py-3.6 waterchain.py的时候,一切都很顺利。”--这不回答你的问题吗?