2013-01-07 14 views
5

में अनसुलझा आयात मैंने पाइथन के लिए Google gdata लाइब्रेरी को ठीक तरह से स्थापित किया है (स्क्रिप्ट वास्तव में ठीक चलती है)। मैं ग्रहण में pydev के साथ काम कर रहा हूँ। मैंने एक मॉड्यूल आयात किया लेकिन आयात कमांड घुमावदार लाल रेखांकित रहता है जैसा कि आप स्क्रीनशॉट पर देख सकते हैं।ग्रहण pydev

enter image description here

मैं जोड़ा निम्नलिखित und ProjectName-> गुण है, लेकिन यह काम नहीं करता है (हालांकि पथ निश्चित रूप से सही है): enter image description here

क्या मैं ऐसा है कि आयात है मुझे क्या करना होगा ग्रहण द्वारा सही ढंग से resovled?

उत्तर

11

आप इस तरह इंपोर्ट स्टेटमेंट है: import gdata.spreadsheet.service तो आप यकीन है कि PYTHONPATH पर वहाँ एक निर्देशिका है कि gdata उपनिर्देशिका होता है कि बनाने की जरूरत है (और gdataservice.py मॉड्यूल फ़ाइल के साथ spreadsheet उपनिर्देशिका होना चाहिए)।

आपके मामले में: यदि आपके gdata निर्देशिका अजगर वितरण पर site-packages निर्देशिका में है, तो आप (नहीं site-packages/gdata/spreadsheet कि तुम वहाँ डाल करने के लिए कोशिश कर रहे थे) यह सुनिश्चित करें कि site-packages PYTHONPATH पर है बनाने की जरूरत है।

उदाहरण के लिए "6.4 पैकेज" अनुभाग में http://docs.python.org/2/tutorial/modules.html पर देखें।

PyDev में आप दो स्थानों पर PYTHONPATH की सामग्री को संशोधित कर सकते हैं:

  • खिड़की -> PyDev -> दुभाषिया - अजगर
  • खिड़की आप
  • इस्तेमाल किया

मैं तुम्हें सुझाव है पहले जांचें कि site-packages निर्देशिका आपके Window -> PyDev -> Interpreter - Python settings -> System PYTHONPATH में है। यह डिफ़ॉल्ट रूप से वहां होना चाहिए, इसलिए यदि आपने इसे नहीं बदला है, तो यह वहां उपस्थित होना चाहिए (और शायद यही कारण है कि आपका एप्लिकेशन काम करता है!)।

अब, कुछ कारणों से, पीईडीवी को site-packages पर एक नई लाइब्रेरी जोड़ने के बाद उपलब्ध पुस्तकालयों के बारे में "ताज़ा" जानकारी के साथ समस्याएं होती हैं (और यह उदाहरण के लिए उस जानकारी का उपयोग करती है ताकि यह जांच सके कि आयात आयात पर त्रुटि मार्कर डालना चाहिए या नहीं)।

इस जानकारी को ताज़ा करने के कुछ तरीके हैं। मेरे लिए सबसे विश्वसनीय सिर्फ पाइथन दुभाषिया को Window -> PyDev -> Interpreter - Python -> Remove के माध्यम से हटा रहा है और फिर इसे उसी दृश्य में वापस जोड़ रहा है। फिर site-packages निर्देशिका को रद्द कर दिया गया है और PyDev पुस्तकालयों के अद्यतन सेट को देखता है, इसलिए त्रुटि मार्कर गायब हो जाना चाहिए।

साइड नोट: ईमानदार होने के लिए, अब तक मुझे इस External Libraries दृश्य का उपयोग करने की आवश्यकता नहीं है। इंटरप्रेटर सेटिंग्स में साइट-पैकेज होने के कारण 99% मामलों के लिए अच्छी तरह से विचार किया जाता है क्योंकि वहां पाइथन बाहरी पुस्तकालयों को रखा जाना चाहिए।