我的虚拟环境(python)导致我的PYTHONPATH中断?

在我的/ etc / profile中,我设置了PYTHONPATH。

但是,当我source myvirtual-env

然后在Python中执行此操作:

 >>> import sys >>> print sys.path 

我没有看到我的path在任何地方。

Solutions Collecting From Web of "我的虚拟环境(python)导致我的PYTHONPATH中断?"

这是virtualenv的重点。 它不会从您的其他设置继承。 如果你想要一个PYTHONPATH,你需要明确地设置一个。

这djangousers的帖子可能是有帮助的,你想用virtualenvwrapper来解决这个问题。

更多信息在这个其他的SO发布在类似的问题 。

我没有观察到Python 2.7的问题,Windows XP上的virtualenv 1.7.1.2,我怀疑Paul McMillan的答案是错误的。

 # PYTHONPATH not set # output from python -c "import sys; print sys.path" (edited for clarity) '', 'C:\\Program Files\\python\\2.7\\lib\\site-packages\\pip-1.1-py2.7.egg', 'C:\\WINDOWS\\system32\\python27.zip', 'C:\\Program Files\\python\\2.7\\DLLs', 'C:\\Program Files\\python\\2.7\\lib', 'C:\\Program Files\\python\\2.7\\lib\\plat-win', 'C:\\Program Files\\python\\2.7\\lib\\lib-tk', 'C:\\Program Files\\python\\2.7', 'C:\\Program Files\\python\\2.7\\lib\\site-packages', 'C:\\Program Files\\python\\2.7\\lib\\site-packages\\setuptools-0.6c11-py2.7.egg-info' # PYTHONPATH not set, virtualenv activated # output from python -c "import sys; print sys.path" (edited for clarity) '', 'c:\\python\\virtualenv\\2.7\\lib\\site-packages\\distribute-0.6.24-py2.7.egg', 'c:\\python\\virtualenv\\2.7\\lib\\site-packages\\pip-1.1-py2.7.egg', 'C:\\WINDOWS\\system32\\python27.zip', 'c:\\python\\virtualenv\\2.7\\DLLs', 'c:\\python\\virtualenv\\2.7\\lib', 'c:\\python\\virtualenv\\2.7\\lib\\plat-win', 'c:\\python\\virtualenv\\2.7\\lib\\lib-tk', 'c:\\python\\virtualenv\\2.7\\Scripts', 'C:\\Program Files\\python\\2.7\\Lib', 'C:\\Program Files\\python\\2.7\\DLLs', 'C:\\Program Files\\python\\2.7\\Lib\\lib-tk', 'c:\\python\\virtualenv\\2.7', 'c:\\python\\virtualenv\\2.7\\lib\\site-packages' # PYTHONPATH set to c:\pythonpath_sample_dir # output from python -c "import sys; print sys.path" (edited for clarity) '' 'C:\\Program Files\\python\\2.7\\lib\\site-packages\\pip-1.1-py2.7.egg' 'c:\\pythonpath_sample_dir' <--- value from PYTHONPATH 'C:\\WINDOWS\\system32\\python27.zip' 'C:\\Program Files\\python\\2.7\\DLLs' 'C:\\Program Files\\python\\2.7\\lib' 'C:\\Program Files\\python\\2.7\\lib\\plat-win' 'C:\\Program Files\\python\\2.7\\lib\\lib-tk' 'C:\\Program Files\\python\\2.7' 'C:\\Program Files\\python\\2.7\\lib\\site-packages' 'C:\\Program Files\\python\\2.7\\lib\\site-packages\\setuptools-0.6c11-py2.7.egg-info' # PYTHONPATH set to c:\pythonpath_sample_dir, virtualenv activated # output from python -c "import sys; print sys.path" (edited for clarity) '' 'c:\\python\\virtualenv\\2.7\\lib\\site-packages\\distribute-0.6.24-py2.7.egg' 'c:\\python\\virtualenv\\2.7\\lib\\site-packages\\pip-1.1-py2.7.egg' 'c:\\pythonpath_sample_dir' <--- value from PYTHONPATH 'C:\\WINDOWS\\system32\\python27.zip' 'c:\\python\\virtualenv\\2.7\\DLLs' 'c:\\python\\virtualenv\\2.7\\lib' 'c:\\python\\virtualenv\\2.7\\lib\\plat-win' 'c:\\python\\virtualenv\\2.7\\lib\\lib-tk' 'c:\\python\\virtualenv\\2.7\\Scripts' 'C:\\Program Files\\python\\2.7\\Lib' 'C:\\Program Files\\python\\2.7\\DLLs' 'C:\\Program Files\\python\\2.7\\Lib\\lib-tk' 'c:\\python\\virtualenv\\2.7' 'c:\\python\\virtualenv\\2.7\\lib\\site-packages' 

另外python virtualenv:为什么我仍然可以导入干净/新的virtualenv旧模块似乎确认PYTHONPATH 正在被用来构建sys.path激活虚拟环境