virtualenv python中的sys.path

编程入门 行业动态 更新时间:2024-10-26 22:21:16
本文介绍了virtualenv python中的sys.path的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在虚拟环境中运行本地圣杯".我看不到虚拟环境中安装的库.从chalicelib/common.py文件内部,我看到要在以下位置设置的路径(sys.path):

I am running "chalice local" inside virtual environment. I don't see the libraries installed in virtual environment. From inside chalicelib/common.py file, I see the path(sys.path) to be set at:

['/home/sudip/myapp', '/usr/local/bin', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages']

但是当我从虚拟环境控制台运行python3.6时,我看到了:

But when I run python3.6 from virtual environment console, I see this:

(venv) myapp$ python3.6 Python 3.6.5 (default, Mar 29 2018, 03:28:50) [GCC 5.4.0 20160609] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> print (sys.path) ['', '/home/sudip/myapp/venv/lib/python36.zip', '/home/sudip/myapp/venv/lib/python3.6', '/home/sudip/myapp/venv/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/sudip//myapp/venv/lib/python3.6/site-packages'] >>>

这里的路径设置正确,为什么在以前的情况下不会发生.因此,在运行应用程序时,我会收到很多模块导入错误,例如:ModuleNotFoundError:没有名为"jwt"的模块.有人可以帮忙吗?

Here the path is properly set.Why its not happening in former case. Hence I am getting lot of module import errors when I run my application, as for example: ModuleNotFoundError: No module named 'jwt'. Can anybody help?

谢谢, Sudip

推荐答案

您需要使用选项--system-site-packages创建virtualenv才能访问系统(和站点)程序包:

You need to create your virtualenv with the option --system-site-packages to get access to the system (and site) packages:

virtualenv -p python3 --system-site-packages myvenv

更多推荐

virtualenv python中的sys.path

本文发布于:2023-11-23 21:17:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1622886.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:python   virtualenv   path   sys

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!