كيفية الوصول إلى 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:لا توجد وحدة تسمى موصل".

كيف يجب تكوين ذلك حتى أتمكن من استخدام الموصل للوصول إلى 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"

-تم تثبيت بايثون في

 /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 ومحاولة اكتشاف الخطأ الذي أفعله.هل لدى أي شخص فكرة عما أحتاج إلى تغييره للوصول إلى وحدة الموصل؟شكرا لك مقدما.

هل كانت مفيدة؟

المحلول

لا تستخدم بايثون الصدفة $PATH لتحديد موقع الوحدات القابلة للاستيراد، فإنه يستخدم قائمة تسمى sys.path في بايثون.إذا قمت بتشغيل المترجم الخاص بك والطباعة sys.path منه يجب أن ترى أن site-packages يتم بالفعل البحث في الدليل.يمكنك طلب إضافة المزيد من الأدلة إلى sys.path قبل تنفيذ البرنامج عن طريق إضافتها إلى ملف $PYTHONPATH متغير بيئة القشرة.

ويظهر من البنية أن mysql هي حزمة مع connector كونها حزمة فرعية، وأعتقد أنك بحاجة إلى جعل الرابط الرمزي دليلًا واحدًا أعلى (أي. إلى mysql الدليل) لالتقاط ما يلزم __init__.py سيؤدي ذلك إلى التعرف عليها كحزمة.

بشكل عام، من الجيد أن تتعلم كيفية الاستخدام pip لتثبيت الوحدات والحزم في ما يسمى بالبيئات الافتراضية.فهو يسمح لك (على سبيل المثال) بأن يكون لديك برامج مختلفة تستخدم إصدارات مختلفة من نفس الوحدة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top