【问题标题】:ImportError: No module named flaskImportError:没有名为flask的模块
【发布时间】:2014-06-12 15:26:08
【问题描述】:

我安装了virtualenv,激活了它,然后安装了flask。 所以我有三个文件夹:Include、Scripts 和 Lib。最后一个文件夹包含 site-packages 文件夹,其中包含 flask 文件夹。

如果我将 app.py(简单的 Hello World 应用程序)放在“site-packages”文件夹中,则不会出现此错误。但是如果放出这三个文件夹,但在我的flask_environment中,我会得到这个错误。

这里有什么问题吗?

错误:

Traceback (most recent call last):
  File "C:\Flask\flask_env\app.py", line 3, in <module>
    from flask import Flask
ImportError: No module named flask

【问题讨论】:

  • 因此,激活环境后,执行时会出现错误:python -c 'import flask' 另外,您能否显示产生此错误的模块的精简版本?
  • 您的文件/文件夹中是否有任何名为 flask 的文件/文件夹?如果是这样,这可能会混淆导入调用。
  • Ffisegydd,我创建了一个 Flask 文件夹来在里面运行 virtualenv 并创建 flask_env 文件夹
  • @user3159162 这告诉你烧瓶安装正确。您应该启动 python 解释器并一次输入一行脚本,当您到达第 3 行时,它应该会重现错误
  • @leandrotk 确保在运行 python 文件之前激活你的 virtualenv。

标签: python flask virtualenv


【解决方案1】:

在运行python文件之前,请确保你已经激活了虚拟环境。

. venv/bin/activate

【讨论】:

  • true,犯了同样的错误 - 在激活我的 virtualenv 之前运行它。
  • 如果你在 linux/ubuntu 上使用 source venv/bin/activate 运行你的 virtualenv
【解决方案2】:

在终端中尝试此命令,而不是选择“运行代码”:

 python3 'insert your file name here without the quotes'

【讨论】:

    【解决方案3】:

    检查这个堆栈答案,只需输入flask而不是pika:

    python no module name pika when importing pika

    【讨论】:

      【解决方案4】:

      如果您使用的是 python3,则必须稍微更改 wsgi 文件。

      我将我的 xx.wsgi 从使用 execfile() 更改为使用 exec()。这是它最终工作时的样子。

      activate_this = '/opt/flask/project_name/py3venv/bin/activate_this.py'
      exec(open(activate_this).read(), dict(__file__=activate_this))
      
      import sys
      sys.path.insert(0, '/opt/flask/project_name')
      
      from project_app_name import app as application
      

      【讨论】:

        【解决方案5】:

        python3 &lt;file_name&gt;运行

        EX:python3 api.py

        【讨论】:

          猜你喜欢
          • 2019-12-01
          • 2014-03-05
          • 2014-05-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多