如何切换到虚拟环境并让Python识别Flask已安装?

0 投票
1 回答
53 浏览
提问于 2025-04-14 17:48

我现在很困惑,因为我按照网上每个论坛帖子的建议都做了。整个过程我都严格按照步骤来,所有设置看起来也都没问题,但Pycharm就是不认我已经安装了Flask。以下是我的代码:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return '<h2>Welcome to my web app</h2>'

Flask下面有个波浪线,代码运行时出错。

"ModuleNotFoundError: No module named 'flask'"

我创建了一个叫做new_env的虚拟环境,并通过命令 .\new_env\Scripts\activate 激活了它。不过在Pycharm里,它还是显示库的根目录是venv,这应该是新建项目时的默认设置吧。这是我的屏幕截图

有没有什么建议?我想用Pycharm自带的Python终端来解决这个问题,但在终端里似乎没有办法做到这一点。只能通过进入实际的设置,费劲地在一个傻乎乎的图形界面里摸索。

我试着在网上找如何通过终端更改库的根目录,但没找到相关信息。应该有办法的。

1 个回答

0

问题

pythonProject
    |-new_venv
        |- app.py

看起来你的 app.py 文件放在了 new_env 文件夹里,这样是不对的。

解释

Python 的虚拟环境是一个用来存放特定版本的 Python 环境和项目所需的依赖包的文件夹。你的应用程序不应该直接放在虚拟环境里,除非你知道自己在做什么。

解决步骤

你可以按照以下步骤将配置恢复到正常状态:

  1. 把你的 app.py 文件移动到项目的根目录。

  2. 删除 new_envvenv 这两个文件夹。我们会重新创建它们。

  3. 用 Pycharm 重新创建 .venv 虚拟环境:

    依次点击 文件 -> 设置 -> 项目: 名称 -> Python 解释器 -> 添加解释器

现在你的目录大致应该是这个样子的:

pythonProject
    |-.venv
    |- app.py
  1. 在虚拟环境 ".venv" 中安装 flask。重新打开 Pycharm 的终端,输入行应该以 .venv 开头,输入 pip install flask

这样应该就能让你的程序正常运行了。


如果你感兴趣,我写了一份更详细的指南,可以在这里查看: https://github.com/ZacharyACoon/documentation/blob/main/it/code/python/managing_python_packages_and_your_code.md

撰写回答