Два вопроса:
- Где новый Python был установлен?
- Как выглядит ваш $ PATH?
Настройка по умолчанию в Unix-подобных системах заключается в том, что установленное пользователем программное обеспечение устанавливается в /usr /local /bin, и большинство * nix-дистрибутивов помещают этот каталог перед общесистемными каталогами в переменной $ PATH по умолчанию (именно так оболочка знает где искать программы). Таким образом, если вы установите что-то новое, новый элемент будет найден первым.
Тем не менее, по умолчанию OS X $ PATH выглядит так:
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
Проблема в том, что если вы опоздаете /usr/local/bin так поздно, то общесистемный Python (который находится в /usr/bin и т.д. В вашем $ PATH) продолжает получать удар.
Мой ответ - сделать так, чтобы мой $ PATH выглядел так на Mac:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin
Для этого создайте файл .profile в вашем домашнем каталоге и добавьте что-то вроде этого:
#### Let's take care of our $PATH
# A backup of the original $PATH
# /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
# My preferred order - /usr/local goes first, damn it!
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin
Изменить: я следую здесь, а не в комментариях, потому что это слишком долго для комментария. Строка в вашем .profile с /sw/bin/init.sh
взята из менеджера пакетов Fink, который, я полагаю, вы используете (или использовали в какой-то момент). Другая строка, кажется, предполагает, что в какой-то момент вы установили MacPython, и он переписал ваш $PATH
для вас. Я не знаю MacPython, но если это этот сайт, то он не обновлялся с 2004 года. Также не говорится ни о какой версии OS X, кроме 10.3, которая не очень актуальна.
Так что теперь я в замешательстве: когда вы обновили Python? Как вы его обновили? Какую версию OS X вы используете?