"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > साझा मॉड्यूल के लिए पायथन में नेमस्पेस पैकेज कैसे बनाएं?

साझा मॉड्यूल के लिए पायथन में नेमस्पेस पैकेज कैसे बनाएं?

2024-11-08 को प्रकाशित
ब्राउज़ करें:790

How to Create Namespace Packages in Python for Shared Modules?

साझा मॉड्यूल वितरण के लिए पायथन में नेमस्पेस पैकेज बनाना

परिचय

पायथन में, नेमस्पेस पैकेज संबंधित मॉड्यूल को वितरित करने के लिए एक सुविधाजनक तरीका है। वे एक ही नेमस्पेस के भीतर मॉड्यूल को परिभाषित करने के लिए कई पायथन उत्पादों को सक्षम करते हैं, जिससे अंतिम-उपयोगकर्ताओं को उन्हें निर्बाध रूप से आयात करने की अनुमति मिलती है। पायथन 3.3 से शुरुआत करते हुए, अंतर्निहित नेमस्पेस पैकेज की अवधारणा पेश की गई थी। यह नेमस्पेस पैकेज निर्देशिकाओं के भीतर स्पष्ट __init__.py फ़ाइलों की आवश्यकता को समाप्त कर देता है। आयात करने वाला सिस्टम स्वचालित रूप से __init__.py फ़ाइलों के बिना निर्देशिकाओं के लिए sys.path खोजता है और उन्हें नेमस्पेस पैकेज के रूप में आरंभ करता है। () विधि का उपयोग स्पष्ट नामस्थान पैकेजों को परिभाषित करने के लिए किया जा सकता है:

from pkgutil आयात विस्तार_पथ __path__ = external_path(__path__, __name__)

यह पंक्ति खोज पथ में पाए जाने वाले किसी भी नियमित पैकेज को नेमस्पेस पैकेज के

path

विशेषता में जोड़ती है।

रेगुलर और नेमस्पेस का उपयोग करना एक साथ पैकेज

ऐसे परिदृश्यों में जहां नियमित और नेमस्पेस पैकेज दोनों सह-अस्तित्व में हैं, पहले उल्लिखित एक्सटेंड_पाथ () विधि को बढ़ाया गया है अंतर्निहित नेमस्पेस पैकेज शामिल करें। यह निम्नलिखित निर्देशिका संरचना की अनुमति देता है:
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)

__init__.py फ़ाइलों के साथ external_path(), आयात package.foo, आयात package.bar, और आयात package.baz सभी अपेक्षा के अनुरूप कार्य करेंगे।pkg_resources .declare_namespace()

pkgutil.extend_path() के विपरीत, pkg_resources.declare_namespace() फ़ंक्शन को अंतर्निहित नेमस्पेस पैकेजों का समर्थन करने के लिए अद्यतन नहीं किया गया है। इसलिए, pkgutil समाधान को नियोजित करने की सलाह दी जाती है।

विज्ञप्ति वक्तव्य यह लेख यहां पुनर्मुद्रित है: 1729575676 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3