我的基本问题是我无法--no-site-packages
工作。"
我在SO上阅读了很多帖子,包括this post。我是一个巨大的Ubuntu noob,在python与os的交互方式方面并没有那么好。
其他帖子提示printenv
会显示PYTHONPATH当我在我的virtualenv中时,printenv
似乎没有列出" PYTHONPATH",但是它很可能我应该寻找的是一个我不知道的特殊dir
而不是大写字母。
然而,我注意到,当我在virtualenv中运行python shell时,会列出我的所有全局包。
我不确定这是virtualenv
,.bashrc
,Ubuntu
还是my brain
的问题。任何帮助将不胜感激。
如果有某种善良的,有知识的灵魂愿意在一个来回的过程中帮助我,我会非常感激。我还没有列出我的任何输出,因为老实说,除了上述内容之外,我还不完全确定从哪里开始。
编辑以回应评论; UTC时间:2015年11月19日07:41
启动环境:
notanambiturner@computer:~/Dropbox/$$ P/...$ virtualenv --no-site-packages venv
New python executable in venv/bin/python
Installing setuptools, pip, wheel...done.
进入环境:
notanambiturner@computer:~/Dropbox/$$ P/...$ source venv/bin/activate
(venv)notanambiturner@computer:~/Dropbox/$$ P/...$
系统包:
(venv)notanambiturner@computer:~/Dropbox/$$ P/...$ pip freeze
adium-theme-ubuntu==0.3.4
apt-xapian-index==0.46
beautifulsoup4==4.4.1
bleach==1.4.2
blinker==1.3
cffi==1.1.2
characteristic==14.3.0
chardet==2.3.0
colorama==0.3.3
command-not-found==0.3
....
virtualenv==13.1.2
virtualenv-clone==0.2.6
virtualenvwrapper==4.7.1
wheel==0.26.0
whitenoise==1.0.6
xdiagnose==3.8.1
zope.interface==4.1.2
(venv)notanambiturner@computer:~/Dropbox/$$ P/...$
sys.path
:
(venv)notanambiturner@computer:~/Dropbox/$$ P/...$ python
Python 2.7.10 (default, Oct 14 2015, 16:09:02)
[GCC 5.2.1 20151010] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/usr/lib/python2.7/lib-old',
'/usr/lib/python2.7/lib-dynload',
'/home/notanambiturner/.local/lib/python2.7/site-packages',
'/usr/local/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages/PILcompat',
'/usr/lib/python2.7/dist-packages/gtk-2.0',
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client']
>>>
您可以清楚地看到sys.path
中包含的网站包非常烦人。
Python3似乎稍好一些,而不是我知道如何使用pip freeze
(或者即使我可以):
(venv)notanambiturner@computer:~/Dropbox/$$ P/...$ python3
Python 3.4.3+ (default, Oct 14 2015, 16:03:50)
[GCC 5.2.1 20151010] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['',
'/usr/lib/python3.4',
'/usr/lib/python3.4/plat-x86_64-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages']
>>>
下次修改。我mind is bottled了。 UTC 08:00 2015年11月19日
因为我是一名阴谋理论家,所以我尝试在Dropbox之外创建一个venv。
notanambiturner@computer:~$ source venv/bin/activate
(venv)notanambiturner@computer:~$ pip freeze
wheel==0.24.0
(venv)notanambiturner@computer:~$ python
Python 2.7.10 (default, Oct 14 2015, 16:09:02)
[GCC 5.2.1 20151010] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['',
'/home/notanambiturner/venv/lib/python2.7',
'/home/notanambiturner/venv/lib/python2.7/plat-x86_64-linux-gnu',
'/home/notanambiturner/venv/lib/python2.7/lib-tk',
'/home/notanambiturner/venv/lib/python2.7/lib-old',
'/home/notanambiturner/venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/home/notanambiturner/venv/local/lib/python2.7/site-packages',
'/home/notanambiturner/venv/lib/python2.7/site-packages']
>>>
什么...... ......哎......?我的意思是,我认为这是一种进步?也许我的文件名(\ $ \ $ \ P /)与导致问题有关?从我所读过的内容来看,只要我sudo rm -rf venv
,我之前在同一目录中创建并删除了virtualenv
就不会有任何区别。是吗?
哎呀。
答案 0 :(得分:0)
在路径名中使用$时存在错误(至少在Ubuntu上)。