2011-12-01 37 views
1

這裏是我的.bash_profile如何添加到開始Python的路徑在bash

PYTHONPATH=".:/home/miki725/django/django:$PYTHONPATH" 
export PYTHONPATH 

於是我打開蟒蛇不過我在.bash_profile添加的目錄是不是第一個:

Python 2.4.3 (#1, Sep 21 2011, 20:06:00) 
[GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import sys 
>>> for i in sys.path: 
...  print i 
... 

/usr/lib/python2.4/site-packages/setuptools-0.6c9-py2.4.egg 
/usr/lib/python2.4/site-packages/flup-1.0.2-py2.4.egg 
/usr/lib/python2.4/site-packages/MySQL_python-1.2.3c1-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/django_form_utils-0.1.7-py2.4.egg 
/usr/lib/python2.4/site-packages/mechanize-0.2.1-py2.4.egg 
/usr/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg 
/usr/lib/python2.4/site-packages/mercurial-1.6-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/lxml-2.2.7-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/django_registration-0.7-py2.4.egg 
/usr/lib/python2.4/site-packages/sorl_thumbnail-3.2.5-py2.4.egg 
/usr/lib/python2.4/site-packages/South-0.7.2-py2.4.egg 
/usr/lib/python2.4/site-packages/django_keyedcache-1.4_1-py2.4.egg 
/usr/lib/python2.4/site-packages/django_livesettings-1.4_3-py2.4.egg 
/usr/lib/python2.4/site-packages/django_app_plugins-0.1.1-py2.4.egg 
/usr/lib/python2.4/site-packages/django_signals_ahoy-0.1_2-py2.4.egg 
/usr/lib/python2.4/site-packages/pycrypto-2.3-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/django_threaded_multihost-1.4_0-py2.4.egg 
/usr/lib/python2.4/site-packages/PIL-1.1.7-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/pyOpenSSL-0.11-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/ZSI-2.0_rc3-py2.4.egg 
/usr/lib/python2.4/site-packages/PyXML-0.8.4-py2.4-linux-i686.egg 
/usr/lib/python2.4/site-packages/pyquery-0.6.1-py2.4.egg 
/usr/lib/python2.4/site-packages/pip-1.0.1-py2.4.egg 
/usr/lib/python2.4/site-packages/virtualenv-1.6.1-py2.4.egg 
/usr/lib/python2.4/site-packages/simplejson-2.1.6-py2.4-linux-i686.egg 
/home/miki725 
/home/miki725/django/django 
/usr/lib/python24.zip 
/usr/lib/python2.4 
/usr/lib/python2.4/plat-linux2 
/usr/lib/python2.4/lib-tk 
/usr/lib/python2.4/lib-dynload 
/usr/lib/python2.4/site-packages 
/usr/lib/python2.4/site-packages/Numeric 
/usr/lib/python2.4/site-packages/PIL 
/usr/lib/python2.4/site-packages/gtk-2.0 
>>> 
>>> 
>>> 
>>> 
>>> import django 
>>> django.__file__ 
'/usr/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/__init__.pyc' 
>>> 

哪有我將它添加到.bash_profile的python路徑中,因此它將在一開始。這是共享主機。我需要能夠導入我的django安裝,而不是使用系統默認值。

謝謝

回答

2

最好的辦法是在運行時修改sys.path。在共享託管環境中,通常在.wsgi文件中執行此操作。你可以做這樣的事情:

import sys 
sys.path.insert(0, '/home/miki725/django/django') 

如果添加export PYTHONSTARTUP=/home/miki725/.pythonrc.bash_profile,您可以添加您的.pythonrc文件,之前也被顯示了一個交互式的提示,它會被執行。

0

我想說的是,當site模塊導入您的PYTHONPATH被修改。請查看user模塊以提供用戶特定的配置(基本上只需在sys.path之前加入您感興趣的目錄)。

注意:user模塊目前已被棄用,但對於Python 2.4,這應該工作。

編輯:只是爲了完整性,爲Python> = 2.6(user模塊不建議使用),你應該創建一個usercustomize.py文件在本地site-packages目錄解釋here

0

作爲一個替代方法,你可以直接從翻譯修改sys.path

sys.path.insert(0,"/home/miki725/django/django") 
0

正如其他人所指出的,你修改sys.path直接在Python這樣的:

sys.path.insert(0,"/home/miki725/django/django") 

但我認爲這是virtualenv你正在尋找解決方案。該工具允許您創建獨立的Python環境。