नेपाली नेपालीDOCS
GitHub

मोड्युल

मोड्युल भनेको अर्को फाइल वा प्याकेजको कोड आयात गरेर पुनः प्रयोग गर्ने उपाय। आयात कीवर्डले सुरु हुने चारवटा रूप छन्।

१. आयात किन?

एकै प्रोग्राममा सबै कोड लेख्नुबाट बच्न — काम-अनुसार फाइल छुट्याइन्छ: एउटामा गणित, अर्कोमा फाइल व्यवस्थापन। प्रयोग गर्दा आयात ले ठाउँमा तानिन्छ:

आयात "गणित"

लेख योग(५, ३)   # ८
लेख घटाऊ(१०, ४)  # ६

आयात गरेपछि त्यस मोड्युलका शीर्ष-स्तरका नामहरू उपलब्ध हुन्छन्।

२. सरल आयात

सबै शीर्ष-स्तर नाम सीधै, बिना नामाङ्कन:

आयात "गणित"

लेख योग(५, ३)      # ८
लेख क्षेत्रफल(२)    # १२.५६...

आयातका नाम सीधै उपलब्ध भएकाले नाम ठोक्किए (collide) भए समस्या हुन सक्छ — त्यसैले नामाङ्कन/लुकाउने रूप उपयोगी हुन्छ।

३. नामाङ्कन आयात (रूपमा)

रूपमा ले मोड्युलका नाम नामाङ्कन (namespace) पछाडि राख्छ — ठोक्काइबाट बच्न:

आयात "गणित" रूपमा ग

लेख ग.योग(५, ३)      # ८
लेख ग.क्षेत्रफल(२)    # १२.५६...

नामाङ्कनलाई चरमा राखेर पनि प्रयोग गर्न सकिन्छ:

राख नेस = ग
लेख नेस.योग(५, ३)   # ८

४. चुनिएको आयात (बाट)

बाट (from) ले सूचीका नाम मात्र आयात गर्छ:

आयात {योग, घटाऊ} बाट "गणित"

लेख योग(५, ३)      # ८
लेख घटाऊ(१०, ४)    # ६
# क्षेत्रफल उपलब्ध छैन

नामाङ्कनसँग पनि जोड्न मिल्छ:

आयात {घटाऊ} बाट "गणित" रूपमा ग
लेख ग.घटाऊ(२०, ५)   # १५

५. लुकाउने आयात (लुकाऊ)

लुकाऊ (hide) ले सूचीका नाम बाहेक सबै आयात गर्छ — ठोक्किने एउटा नाम मात्र बाहिर राख्नु परे:

आयात "गणित" लुकाऊ {घटाऊ}

लेख योग(५, ३)      # ८
# घटाऊ आयात भएन

६. उपमोड्युल

मोड्युलभित्रका उपमोड्युल /-ले अलग गरिएको पथले आयात हुन्छ:

आयात "http/सर्भर"

लेख पठाउ("नमस्ते")

७. आफ्नै मोड्युल बनाउने

कुनै पनि .npl फाइल अर्को .npl बाट आयात गर्न सकिन्छ — एन्ट्री फाइलसँगैको आपेक्षिक फाइल, आयात नामसँग मिल्दा स्वचालित रूपमा समाधान हुन्छ।

गणित.npl:

कार्य वर्ग(पूर्णाङ्क क) -> पूर्णाङ्क
    फर्काऊ क * क
अन्त्य

मुख्य.npl:

आयात "गणित"

लेख वर्ग(५)   # २५

प्याकेजको रूपमा बाँड्न nepali package install <नाम> प्रयोग गरिन्छ।

८. मानक पुस्तकालय

मानक पुस्तकालयका कार्य (लेख, गणित_निरपेक्ष, पाठ_लम्बाइ...) पूर्व-दर्ता गरिएका नेटिभ कार्य हुन् — आयात नगरी पनि चल्छन्:

लेख गणित_निरपेक्ष(-५)     # ५
लेख पाठ_लम्बाइ("नेपाली")   # ६

विस्तृत सूचीका लागि मानक पुस्तकालय हेर्नुहोस्।

९. नोटहरू

  1. सरल, चुनिएको, वा लुकाउने आयातका नाम सीधै उपलब्ध हुन्छन् — नामाङ्कन गरिएको हुँदैन।
  2. नामाङ्कन आयात (रूपमा) ले नामहरू नामाङ्कन पछाडि राख्छ; मोड्युलको शीर्ष-स्तर कोड आयातको बेला एकपटक चल्छ।
  3. आयात चक्र (cycle) पत्ता लगाएर कम्पाइल-टाइम त्रुटि देखाइन्छ।
  4. सबैभन्दा सुरक्षित सिफारिस: जति सानो आयात, उति स्पष्ट कोड।