Как получить доступ к MySQL Python Connector с помощью Python 2.7.8 и Sublime Text 3 в OS X 10.9

StackOverflow https://stackoverflow.com//questions/25009593

Вопрос

Я пытаюсь настроить MySQL для работы с Python 2.7.8 и Sublime Text 3 в OS X 10.9, поэтому я установил соединитель MySQL Python.Всякий раз, когда я пытаюсь запустить «import mysql.connector», я получаю ответ «ImportError:Нет модуля с именем Connector».

Как это следует настроить, чтобы я мог использовать соединитель для доступа к MySQL?

Подробности:

-Sublime установлен в разделе «Приложения».

-Sublime Text 3 использует Python 3 по умолчанию, поэтому мне пришлось настроить систему сборки Python 2.7.Вот мой код для этой системы:

  "cmd": ["/usr/local/Cellar/python/2.7.8/Frameworks/Python.framework/Versions/2.7/bin/python2.7", "-u", "$file"],
  "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  "selector": "source.python2"

-Python установлен на

 /usr/local/Cellar/python/2.7.8/Frameworks/Python.framework/Versions/2.7/bin/python2.7

-Исполняемый файл MySQL установлен по адресу

/usr/local/mysql-5.6.19-osx10.7-x86_64/bin

-Разъем имеет символическую ссылку на

/usr/local/Cellar/python/2.7.8/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/mysql/connector

и полностью установлен на

/usr/local/lib/python2.7/site-packages/mysql/connector

Кроме того, я добавил следующее в .bash_profile, чтобы добавить необходимые каталоги в путь.

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

# trying to get mysql access
PATH = "/usr/local/Cellar/python/2.7.8/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:${PATH}"
export PATH

Я уверен, что упускаю что-то простое, но я впервые настраиваю так много, и я потратил слишком много часов на поиск в Google и попытки выяснить, что я делаю неправильно.Кто-нибудь знает, что мне нужно изменить, чтобы получить доступ к модулю разъема?Заранее спасибо.

Это было полезно?

Решение

Python не использует оболочку $PATH переменная для поиска импортируемых модулей, она использует список под названием sys.path в Python.Если вы запустите свой интерпретатор и распечатаете sys.path из этого вы должны увидеть, что site-packages каталог уже ищется.Вы можете запросить добавление дополнительных каталогов в sys.path перед выполнением программы, добавив их в $PYTHONPATH переменная среды оболочки.

Из структуры видно, что mysql это пакет с connector будучи подпакетом, и я предполагаю, что вам нужно сделать символическую ссылку на один каталог выше (то есть к mysql каталог), чтобы подобрать необходимое __init__.py это приведет к тому, что он будет распознан как пакет.

В общем, неплохо научиться пользоваться pip для установки модулей и пакетов в так называемых виртуальных средах.это позволяет вам (например) заставить разные программы использовать разные версии одного и того же модуля.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top