जब तक -S
विकल्प, python
बाइनरी एक विशेष site मॉड्यूल क्रियान्वयन से पहले डिफ़ॉल्ट रूप से आयात किया जाता है करने के लिए पारित कर दिया है अजगर दुभाषिया खोल में कमांड लाइन पूरा होने के लिए सक्षम करने के लिए इसका इस्तेमाल करते हैं आपकी लिपि, या इंटरैक्टिव दुभाषिया को पारित किया जाता है। अन्य चीजों के अलावा मॉड्यूल *.pth
फ़ाइलों को देखता है। प्रत्येक पंक्ति पर *.pth
फ़ाइलों में sys.path
, या निष्पादित करने के लिए आदेश शामिल करने के लिए पथ होना चाहिए। मॉड्यूल के साथ-साथ sitecustomize
, और usercustomize
(जिसमें मनमानी कोड हो सकता है, यदि आपके सहयोगियों को पागल बनाने के लिए एक अच्छा तरीका हो, तो वे त्रुटियों को उठाने के लिए एक अच्छा तरीका हो सकते हैं) यदि वे sys.path
में कहीं मौजूद हैं।
समस्या यह है कि वर्तमान निर्देशिका sys.path
में नहीं है जब site
मॉड्यूल आयात किया जाता है, तो यह आपकी विशेष स्क्रिप्ट को कॉन्फ़िगर करना मुश्किल है।
मैं कभी कभी निम्न पंक्ति मेरी स्क्रिप्ट की शुरुआत में, इतना है कि स्क्रिप्ट शुरू होगा वर्तमान निर्देशिका में .pth
फ़ाइलों के लिए searchin और sys.path
को लापता पथ को जोड़ने के साथ जोड़ें:
# search for *.pth files in the current directory
import site; site.addsitedir('')
धन्यवाद! अब मैं इसे देखता हूं। – rubik
ध्यान दें कि iPython ने तब से 'ipythonrc' को हटा दिया है। नई कॉन्फ़िगरेशन फ़ाइल में समान कार्यक्षमता (और बहुत कुछ) है, जैसा कि वर्णन किया गया है [उनके दस्तावेज़ में] (http://ipython.org/ipython-doc/dev/config/ipython.html#example)। –
वह लिंक अब मर चुका है। एक संकल्प के लिए http://stackoverflow.com/questions/20835977/ देखें। –