Make IPython work with virturalenv

IPython是很是方便的交互式python環境,但默認不能識別virturalenv. python

解決方案很簡單:函數

寫一個配置腳本讓IPython識別virtualenv,將virtualenv的包放到sys.path中.net

import site
from os import environ
from os.path import join
from sys import version_info

if 'VIRTUAL_ENV' in environ:
    virtual_env = join(environ.get('VIRTUAL_ENV'),
                       'lib',
                       'python%d.%d' % version_info[:2],
                       'site-packages')
    site.addsitedir(virtual_env)
    print 'VIRTUAL_ENV ->', virtual_env
    del virtual_env
del site, environ, join, version_info

保存到~/.ipython目錄下,取名virtualenv.py。code

另外在~/.ipython/ipy_user_conf.py中的main函數最後添加以下代碼:blog

execf('~/.ipython/virtualenv.py')

當在virtualenv中執行ipython時,就okay了,效果以下:ip

Develop:user@machine :~$ ipython
VIRTUAL_ENV -> /home/user/.virtual_python/lib/python2.5/site-packages

 英文原文連接:http://blog.ufsoft.org/2009/1/29/ipython-and-virtualenvget

相關文章
相關標籤/搜索