试图最终跳转到Python 3,但我遇到了与virtualenvwrapper的一些问题.我首先创建虚拟环境,如下所示:
mkvirtualenv -p /usr/local/bin/python3 projectname
产量:
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 "", line 1, in 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中的site-packages,因此virtualenv忽略了它.
任何线索在这里发生了什么/如何解决?假设virtualenvwrapper准备好使用python3的黄金时段,我错了吗?我不需要破坏我的.bashrc或手动设置环境变量的漂亮解决方案更可取.我希望有一种方法可以通过virtualenv和virtualenvwrapper提供的api来实现.
谢谢!