कोड आयात करने के विभिन्न तरीकों में से, क्या कुछ तरीके हैं जो दूसरों की तुलना में उपयोग करने के लिए बेहतर हैं? लघु में इस कड़ी http://effbot.org/zone/import-confusion.htm कहा गया है किपायथन (और Django) सर्वोत्तम आयात प्रथाओं
from foo.bar import MyClass
सामान्य परिस्थितियों में या जब तक आप जानते हैं कि आप क्या कर रहे हैं MyClass आयात करने के लिए पसंदीदा तरीका नहीं है। (बल्कि, एक बेहतर तरीका चाहते हैं:
import foo.bar as foobaralias
और उसके बाद कोड में, उपयोग करने के लिए MyClass का उपयोग
foobaralias.MyClass
)
संक्षेप में, ऐसा लगता है कि इसके बाद के संस्करण संदर्भित कड़ी है यह कह रहा है कि यह आमतौर पर मॉड्यूल के कुछ हिस्सों की बजाय मॉड्यूल से सब कुछ आयात करने के लिए बेहतर है।
हालांकि, मैंने जो लेख लिखा है वह वास्तव में पुराना है।
मैंने यह भी सुना है कि कम से कम Django परियोजनाओं के संदर्भ में, यह केवल उन मॉड्यूल को आयात करने के लिए बेहतर है, जिन्हें आप पूरे मॉड्यूल के बजाय उपयोग करना चाहते हैं। यह कहा गया है कि यह फ़ॉर्म सर्कुलर आयात त्रुटियों से बचने में मदद करता है या कम से कम django आयात प्रणाली को कम नाजुक बनाता है। यह इंगित किया गया था कि Django का अपना कोड "आयात x" पर "x आयात y से" पसंद करता है।
इस परियोजना को मानते हुए कि मैं काम कर रहा हूं __init__.py
की किसी विशेष विशेषताओं का उपयोग नहीं करता ... (हमारी सभी __init__.py
फ़ाइलें खाली हैं), मुझे किस आयात विधि का पक्ष लेना चाहिए, और क्यों?
यह एक विशिष्ट अपवाद Django में हो सकता है जहां आप एक वर्ग आयात कर रहे हैं जो एक मॉडल लागू करता है (जो डेटाबेस तालिका का प्रतिनिधित्व करता है)। उस स्थिति में "django.contrib.auth आयात उपयोगकर्ता से" कहना पसंद है। लेकिन जैसा कि मैंने कहा, यह एक विशेष वातावरण के लिए विशिष्ट एक सम्मेलन है। –
'myapp आयात utils से' के बारे में क्या; utils.frobnicate() '? – Joschua
जोशुआ: यह भी ठीक है, क्योंकि कोई भी पढ़ रहा है, यह देखने में सक्षम होगा कि 'फ्रोब्निकेट' कहां से आयात किया जा रहा है। –