gpt4 book ai didi

在 virtualenv 中全局安装 Python3 pip

转载 作者:太空狗 更新时间:2023-10-30 01:38:18 36 4
gpt4 key购买 nike

试图最终跳转到 Python 3,但遇到了 virtualenvwrapper 的一些问题。我首先像这样创建虚拟环境:

mkvirtualenv -p/usr/local/bin/python3 项目名

产生:

Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/usr/local/Cellar/python3/3.3.3/Frameworks/Python.framework/Versions/3.3'
New python executable in projectname/bin/python3.3
Also creating executable in projectname/bin/python
Installing setuptools, pip...done.

到目前为止,还不错。我检查 python 控制台以确保环境正在查看正确的解释器以及所有这些。这是悲伤发生的地方(当 virtualenv 处于事件状态时):

pip install flask 号称成功,可惜:

Python 3.3.3 (default, Jan  2 2014, 13:26:32) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'flask'

问题是:

$ pip show flask
---
Name: Flask
Version: 0.10.1
Location: /usr/local/lib/python3.3/site-packages
Requires: Werkzeug, Jinja2, itsdangerous

除非我完全误解了 virtualenv/wrapper 和它们各自的魔力(我很可能是这样),否则 pip install 似乎是在全局安装 Flask 而不是安装到我的 virtualenv 中的站点包,因此 virtualenv 是忽略它。

这里有什么线索/如何解决?假设 virtualenvwrapper 已准备好使用 python3 进入黄金时段,我错了吗?我不必破坏我的 .bashrc 或手动设置环境变量的漂亮解决方案是更可取的。我希望有一种方法可以通过 virtualenv 和 virtualenvwrapper 提供的 api 来做到这一点。

谢谢!

最佳答案

我在 pip 全局安装包而不是在激活的 virtualenv 中安装包时遇到了问题。看看pip installing in global site-packages instead of virtualenv对于问题(和答案)。

基本上,解决方案包括修改 virtualenv 中 pip 脚本的 shebang,因为它们指向错误的 python 安装(全局而不是在 virtualenv 中)。只需将 shebang 更改为指向正确的位置即可。

注意:应归功于提出解决方案的 Chase Ries。

关于在 virtualenv 中全局安装 Python3 pip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20944445/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com