Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Dreamhost上的virtualenv:如何确保我的环境一直被使用_Python_Virtualenv_Dreamhost - Fatal编程技术网

Python Dreamhost上的virtualenv:如何确保我的环境一直被使用

Python Dreamhost上的virtualenv:如何确保我的环境一直被使用,python,virtualenv,dreamhost,Python,Virtualenv,Dreamhost,我最近开始使用virtualenv,并尝试安装自己的软件包,如PIL等 我想知道我需要做些什么来确保一旦激活了环境,它仍然处于激活状态,或者至少它被使用,而不是系统python 到目前为止,我已经在我的主目录中创建了环境,可以激活和停用它。我只需要把它永久化 如果您需要更多信息,请告诉我。通常的答案是“将虚拟环境的“bin”目录放在系统默认路径之前”。具体如何做到这一点,很大程度上取决于您使用的操作系统和shell。但是,由于您使用了术语“主目录”,我将假设您使用的是某种形式的Unix,并且由于

我最近开始使用virtualenv,并尝试安装自己的软件包,如PIL等

我想知道我需要做些什么来确保一旦激活了环境,它仍然处于激活状态,或者至少它被使用,而不是系统python

到目前为止,我已经在我的主目录中创建了环境,可以激活和停用它。我只需要把它永久化


如果您需要更多信息,请告诉我。

通常的答案是“将虚拟环境的“bin”目录放在系统默认路径之前”。具体如何做到这一点,很大程度上取决于您使用的操作系统和shell。但是,由于您使用了术语“主目录”,我将假设您使用的是某种形式的Unix,并且由于大多数变体默认为与bash兼容的版本,您可能只需要在~/.bashrc文件中添加行“source/path/to/my/vrital/py/bin/activate”。添加该行、注销和重新登录,您的虚拟环境应该是您的默认环境。

将其添加到文件顶部:

import sys, os

# make sure we are running the right version or venv
INTERP = os.path.expanduser("path/to/your/bin/python") 
if sys.executable !=INTERP: os.execl(INTERP, INTERP, *sys.argv)

你说得对。我在Unix环境下工作。我也在一个共享的网络主机上。我尝试了你的解决方案,但我没有看到我的虚拟python在我重新登录时被激活。你在使用哪个shell?对于C-shell,在~/.cshrc中使用“setenv PATH/PATH/to/…:$PATH”,对于TCSH,将其放置在~/.tcshrc中。您还可以尝试将原始的
export
命令放在~/.profile文件中。我正在使用bash。我已经用.bashrc和.bash_profile.Hi尝试过了,我有一个类似的问题,我想知道这个问题是否已经解决了。