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