पायथन में सर्कुलर निर्भरता
पायथन मॉड्यूल के साथ काम करते समय एक परिपत्र निर्भरता का सामना करना एक निराशाजनक समस्या हो सकती है। इस विशिष्ट परिदृश्य में, हमारे पास दो फ़ाइलें हैं, नोड.py और path.py, जिनमें क्रमशः नोड और पथ वर्ग शामिल हैं।
प्रारंभ में, path.py ने नोड.py से आयात * का उपयोग करके नोड.py आयात किया। हालाँकि, पथ ऑब्जेक्ट को संदर्भित करने वाले नोड में एक नई विधि जोड़ने के बाद, path.py को आयात करने से एक त्रुटि हुई क्योंकि नोड परिभाषित नहीं था।
परिपत्र निर्भरता को हल करने के लिए, निम्नलिखित को लागू करने पर विचार करें:
&&&]आलसी मूल्यांकन का उपयोग करें: आरंभीकरण के दौरान एक मॉड्यूल को दूसरे के अंदर आयात करने के बजाय, किसी विशिष्ट फ़ंक्शन के भीतर आवश्यक होने पर ही इसे आयात करें। उदाहरण के लिए, node.py में, केवल जरूरत पड़ने पर ही पथ आयात करें:# node.py में पथ आयात पथ से क्लास नोड ...# in node.py from path import Path class Node ...path.py में, नोड को केवल उस विधि के भीतर आयात करें जिसके लिए इसकी आवश्यकता है:# path.py में कक्षा पथ डीईएफ़ विधि_नीड्स_नोड(): नोड आयात नोड से n = नोड() ...
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3