virtualenv取决于你从哪里开始python

时间:2016-07-12 19:30:01

标签: python windows python-venv

我通常是unix / Mac用户,所以我不确定这可能与此有什么关系,但我的一个用户是在通过cmd命令行运行的Windows框(Windows 7?)上

我有一个为windows设置的virtualenv,在这个系统上(其他计算机工作正常)我可以启动virtualenv(activate.bat),当我从venv / Scripts目录中运行python时,事情看起来很好。我的sys.path是正确的。

当我cd ..,并再次运行python(或从其他任何地方运行python)时,sys.path就是sys.path,如果我不在virtualenv中。

我仍然将(venv)置于我的提示之前,所以venv认为它仍然活跃......

正确的sys.path:

['', 'C:\\Windows\\system32\\python27.zip', 
'C:\\Users\\dellam\\Dropbox (CEP)\\users\\brianp\\course\\CYAN\\venv\\DLLs', 
'C:\\Users\\dellam\\Dropbox (CEP)\\users\\brianp\\course\\CYAN\\venv\\lib', 
'C:\\Users\\dellam\\Dropbox CEP)\\users\\brianp\\course\\CYAN\\venv\\lib\\plat-win', 
[ETC]]
除了venv \ Scripts以外的任何地方的

sys.path:

sys.path

['', 'C:\\Windows\\system32\\python27.zip', 'C:\\Python27\\DLLs', 
'C:\\Python27\\lib', 'C:\\Python27\\lib\\plat-win', 
'C:\\Python27\\lib\\lib-tk', 'C:\\Python27', 
'C:\\Python27\\lib\\site-packages']

我正确使用virtualenv。至少,它适用于其他计算机。我正确地创造了一个venv,我正在激活它。它有(venv)附加到我的提示。人们正在链接的问题解释了如何使用虚拟环境。我正确地做了所有这些。

1 个答案:

答案 0 :(得分:0)

显然问题是我的代码和virtualenv存在于Dropbox上。这意味着它被复制到每台新计算机。它在第二台计算机上的PowerShell中工作的事实只是一个侥幸...现在我需要找出一个更好的方法来做到这一点...... 叹息