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

相关文章
相关标签/搜索