2012-06-02 15 views
20

मेरे पास मेरे पैकेज में कई, खाली, __init__.py फ़ाइलें हैं I क्या यह सही है अगर मैं उन्हें खाली रखता हूं या क्या मुझे उनके अंदर pass रखना होगा?खाली __init__.py फ़ाइल कैसे सही है?

क्या कोई पीईपी, या अन्य विषय के बारे में दिशानिर्देश हैं?

+2

'पास' केवल तभी जरूरी है जहां एक इंडेंट ब्लॉक आवश्यक है (' def', 'if',' while' et cetera के बाद) और आप इसे खाली छोड़ना चाहते हैं। –

उत्तर

23

खाली फ़ाइलों perfectly fine हैं:

__init__.py फ़ाइलों अजगर के रूप में संकुल युक्त निर्देशिका का इलाज करने की आवश्यकता है; मॉड्यूल खोज पथ पर बाद में होने वाले मान्य मॉड्यूल को अनजाने में छिपाने से, स्ट्रिंग जैसे सामान्य नाम वाले निर्देशिकाओं को रोकने के लिए यह किया जाता है। सबसे सरल मामले में, __init__.py केवल एक खाली फ़ाइल हो सकती है, लेकिन यह पैकेज के लिए प्रारंभिक कोड निष्पादित कर सकती है या बाद में वर्णित __all__ चर सेट कर सकती है।

आप इसे अपने पैकेज में मॉड्यूल से सार्वजनिक सामान आयात करने के लिए तो लोग बस के बजाय from yourpackage.somemodule import whatever उपयोग करने के लिए होने के from yourpackage import whatever उपयोग कर सकते हैं एक अच्छी जगह है करने के लिए योजना बना रहे हैं क्या पर निर्भर करता है

संबंधित मुद्दे