इसलिए मैं एक मौजूदा पुस्तकालय को संशोधित करने की कोशिश कर रहा था और इसे स्मार्ट तरीके से करने और pip -e मैंने इसके बजाय सिर्फ पुस्तकालयों को स्थापित किया, फिर जो भी बदलाव मैं चाहता था, उसके लिए संशोधित फाइलों की अदला-बदली की। उदाहरण के लिए यदि मेरे पास था:

Library A/ 
---doSomethingA.py 
---otherFiles.py

मैंने अभी-अभी doSomethingA.py को मिटाया है और इसे doSomethingA.py के अपने संस्करण से बदल दिया है। सैद्धांतिक रूप से मुझे लगा, क्योंकि मैं स्थानीय रूप से फ़ाइल को संपादित कर रहा हूं, यह अभी भी मेरी लाइब्रेरी के लिए योजनाबद्ध रूप से काम करना चाहिए, जो भी अतिरिक्त कार्यक्षमता मैं चाहता हूं।

हालांकि.... इसके मूल रूप से पागल हो रहा है। जबकि मैं फ़ाइल में अपने संपादित परिवर्तन देख सकता हूं, जब मैं पुस्तकालय चलाता हूं तो यह स्पष्ट रूप से उस फ़ाइल को नहीं चला रहा है। मैंने इस तरह की चीजें कीं:

  1. पूरी फ़ाइल पर टिप्पणी करना (अभी भी किसी तरह चलता है)

  2. वास्तव में doSomethingA.py का उपयोग करके लाइब्रेरी और किसी अन्य स्क्रिप्ट के हिस्से को अनइंस्टॉल करना यह अभी भी चलता है ?? (यानी import libraryA जैसा कुछ JupyerHub पर काम करता है, लेकिन putty टर्मिनल पर नहीं...?)

मैं स्पष्ट रूप से इस निष्कर्ष पर पहुंचा हूं कि यह फ़ाइल नहीं चला रहा है जो यह कहता है कि यह है (और मुझ पर विश्वास करें मैंने फ़ाइल के पथ को 10 बार चेक किया है)।

मेरा प्रश्न है:

  • यह कैसे हो सकता है? ऐसी कौन सी जगहें हैं जहां अजगर फाइल आदि की दूसरी कॉपी स्टोर करेगा?

मैंने __pychache__ को भी हटा दिया है, लेकिन मैं कुछ और करने के बारे में नहीं सोच सकता। क्या मेरा सबसे अच्छा विकल्प बस छोड़ देना और एक नया आभासी वातावरण बनाना है, आदि?

0
ocean800 5 नवम्बर 2019, 00:11

1 उत्तर

सबसे बढ़िया उत्तर

मैं समझता हूं कि आप ज्यूपिटर हब पर चल रहे हैं।

इसका मतलब है कि आपका अजगर सर्वर पर दूरस्थ रूप से चल रहा है और ढांचा आपके स्थानीय प्रोजेक्ट (लेकिन स्थापित पुस्तकालयों को नहीं) को सिंक करने का ख्याल रख रहा है।

सर्वर पर अजगर आपके स्थानीय परिवर्तन से अवगत नहीं है।

एक अस्थायी शमन के रूप में आप स्थापित लाइब्रेरी को प्रोजेक्ट रूट पर कॉपी कर सकते हैं।

1
Lior Cohen 5 नवम्बर 2019, 00:22