Добавить в python path mac os x
Я думал
import sys
sys.path.append("/home/me/mydir")
Это добавление dir к моему pythonpath
Если я печатаю sys.путь моего режиссера находится там.
Затем я открываю новую команду, и ее больше нет.
Но почему-то Python не может импортировать модули, которые я сохранил в этом dir.
Что я делаю не так?
Я читаю .профиль или .bash_profile сделает свое дело.
Должен ли я добавить:
PATH="/Me//Documents/mydir:$PYTHONPATH"
export PATH
Чтобы заставить его работать?
4 ответов:
Модификации
sys.pathприменяются только к жизни этого интерпретатора Python. Если вы хотите сделать это постоянно, вам нужно изменить переменную окруженияPYTHONPATH:Обратите внимание, чтоPYTHONPATH="/Me/Documents/mydir:$PYTHONPATH" export PYTHONPATHPATH- это системный путь для исполняемых файлов, который полностью отделен.**Вы можете написать выше в
~/.bash_profileи источник его с помощьюsource ~/.bash_profile
Не знаю, почему решение Мэтью не сработало для меня (может быть, я использую OSX10. 8 или, возможно, что-то связанное с macports). Но я добавил следующее в конец файла по адресу
~/.profileexport PYTHONPATH=/path/to/dir:$PYTHONPATHМой каталог теперь находится на pythonpath -
my-macbook:~ aidan$ python Python 2.7.2 (default, Jun 20 2012, 16:23:33) [GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> sys.path ['', '/path/to/dir', ...И я могу импортировать модули из этого каталога.
Установка переменной окружения $PYTHONPATH, по-видимому, не влияет на IPython-терминалы IDE Spyder на Mac. Однако меню приложения Spyder содержит " PYTHONPATH manager.- Добавление моего пути сюда решило мою проблему. "PYTHONPATH manager"также сохраняется при перезапуске приложения.
Это специфично для Mac, поскольку установка переменной среды PYTHONPATH на моем ПК с Windows дает ожидаемое поведение (модули найдены) без использования менеджера PYTHONPATH в Спайдер.
Ответ Мэтью работает для терминальной оболочки python, но в моем случае он не работал для IDLE shell, потому что многие версии python существовали до того, как Я заменил их все на Python2.7.7. Как я решил проблему с холостым ходом.
- в терминале,
cd /Applications/Python\ 2.7/IDLE.app/Contents/Resources/- затем
sudo nano idlemain.py, введите пароль, если требуется.- после
os.chdir(os.path.expanduser('~/Documents'))этой строки я добавил:sys.path.append("/Users/admin/Downloads....")Примечание: замените содержимое кавычек каталогом, в который будет добавлен модуль python- чтобы сохранить изменение, нажмите ctrl+x и войти Теперь откройте idle и попробуйте импортировать модуль python, никакой ошибки для меня!!!
Comments