2012-02-16 3 views
1

У меня есть python 2.7.2, установленный на моем Mac. Я установил с помощью python-2.7.2-macosx10.6.dmg У меня есть только один экземпляр python.Как исправить путь python

Когда я типа в терминале, чтобы найти путь питона, я получаю это:

python 
Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import os.path 
>>> os.environ['PYTHONPATH'].split(os.pathsep) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/UserDict.py", line 23, in __getitem__ 
    raise KeyError(key) 
KeyError: 'PYTHONPATH' 

Это одна вещь отсутствует, так что я могу установить Mercurial. Раньше я использовал Mercurial, и я мог что-то сломать. Вы знаете, как решить эту проблему?

+1

Вы уверены, что хотите указать переменную окружения 'PYTHONPATH', или просто хотите знать, где Python ищет пакеты? –

+0

Я не уверен, что понял ваш вопрос. Я показываю содержимое переменной окружения, и он вызывает KeyError. Как исправить PYTHONPATH? поэтому установите переменную окружения в нужном месте. –

ответ

4

Вам необходимо изменить массив sys.path. Он инициализируется от значений по умолчанию Python и переменной окружения «PYTHONPATH»: http://docs.python.org/library/sys.html#sys.path

дописать каталог активный путь:

import sys; 
sys.path.append("/path/to/your/dir") 
+0

Спасибо, Иван, я попробую, когда вернусь домой. Можете ли вы предоставить образец кода для установки PYTHONPATH? –

+0

Я добавил образец к моему ответу –

+2

Не уверен, почему @ roy-m-j считает, что там должна быть точка с запятой, но Python не требует, чтобы это указывало на изменение строки. – Lars

1

Вот еще один полезный совет:

Смотри под ~ /. локальная папка. В файле ~/.local/lib/может быть файл homebrew.pth (или * .pth), что может вызвать проблему путем переопределения пути python.

Если иммобилизатор $ PYTHONPATH не удалось устранить проблему, попробуйте удалить:

~/.local папку.

Смежные вопросы