У меня была такая же проблема, и, как я вижу сейчас, она была вызвана грязной установкой Python. У меня установлена OS X более года с тех пор, как я купил новый ноутбук, и я уже несколько раз устанавливал и переустанавливал Python, используя разные источники (официальные двоичные файлы, homebrew, официальные двоичные файлы + ручные настройки, как описано здесь ). Не спрашивайте меня, почему я это сделал, я просто несчастный новичок, верящий, что все будет исправлено после переустановки.
Итак, у меня было несколько разных Pythons, установленных здесь и там, а также множество жестких ссылок, указывающих на них непоследовательно. В конце концов мне все это надоело, и переустановил OS X , тщательно очистив систему от всех найденных Питонов, используя утилиту find
. Кроме того, я удалил все ссылки, указывающие на любой Python отовсюду. Затем я установил свежий Python, используя homebrew, установил virtualenv, и теперь все работает как чудо.
Итак, мой рецепт:
sudo find / -iname "python*" > python.log
Затем проанализируйте этот файл, удалите и отсоедините все, что связано с нужной вам версией Python, переустановите его (я сделал это с помощью homebrew, возможно, официальная установка также подойдет) и наслаждайтесь. Убедитесь, что вы связали все, что связано с Python от /usr/bin
и /usr/local/bin
, а также удалили все экземпляры Frameworks/Python.framework/Versions/<Your.Version>
в /Library
и /System/Library
.
Это может быть грязный хак, но у меня это сработало. Я предпочитаю не хранить какие-либо общесистемные библиотеки Python, кроме pip
и virtualenv
, и создавать виртуальные среды для всех моих проектов, поэтому меня не волнует удаление важных библиотек. Если вы не хотите удалять все, все равно попытайтесь понять, являются ли ваши питоны, какие ссылки на них указывают и откуда. Затем подумайте, что может вызвать проблему, и устраните ее.