繁体   English   中英

如何有效地让 python 模块在不同环境中工作

[英]How to effectively get python modules working across different environments

我是 python 的新手,只是想了解如何让事情在 python 中跨不同环境运行/工作。 在这种情况下,关于环境,我的意思是这样。 我正在我的 MacBook Pro - Catalina 10.15.5 上学习 python。 我已经使用brew install安装了 python 。 我使用pyenv来控制版本。 通过iTerm ,我将使用virtualenvpip install创建虚拟环境来安装模块等。

我也在使用Visual Studio CodePyCharm来学习和理解这些工具。

在我学习 python 的过程中,我已经查看并尝试了许多 python 教程。 话虽如此,为什么在使用iTerm时,如果我执行pip install <module> ,模块显示安装没有错误,但是在运行应用程序时( FLASK_APP=app.py flask run) ,我会得到这个信息:

Traceback (most recent call last):
  File "/Users/pynoob/.pyenv/versions/3.8.0/lib/python3.8/site-packages/flask/cli.py", line 240, in locate_app
    __import__(module_name)
  File "/Users/pynoob/Desktop/MyWork/Learn/LearningPython/OktaTutorial/app.py", line 2, in <module>
    from flask_oidc import OpenIDConnect
ModuleNotFoundError: No module named 'flask_oidc'

但是,当我在终端中的 Visual Studio Code 中运行它们时,它可以工作。 如何? 使用模块时我从根本上误解了什么? 它与 iTerm 与 Visual Studio Code 有关吗?

这是 python 代码片段:

from flask import Flask, render_template, g, redirect, url_for
from flask_oidc import OpenIDConnect
from okta import UsersClient

在查看此处评论中共享的文章后。 我在 iTerm 中运行了以下命令并使其正常工作:

 python3 -m venv <nameyourenv>
 pip install -r requirements.txt
 FLASK_APP=app.py flask run

示例 output:

 * Serving Flask app "app.py"
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM