Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन मॉड्यूल कैसे विकसित करें?

पायथन में परिभाषाओं को एक फ़ाइल में रखने और उन्हें स्क्रिप्ट या इंटरप्रेटर के इंटरैक्टिव इंस्टेंस में उपयोग करने का एक तरीका है। ऐसी फ़ाइल को मॉड्यूल कहा जाता है; मॉड्यूल से परिभाषाओं को अन्य मॉड्यूल में या मुख्य मॉड्यूल में (वेरिएबल का संग्रह जिस तक आपकी स्क्रिप्ट में शीर्ष स्तर पर और कैलकुलेटर मोड में पहुंच होती है) इम्पोर्ट किया जा सकता है।

मॉड्यूल खोज पथ

जब आप एक मॉड्यूल इम्पोर्ट करते हैं, मान लें `hello`, तो इंटरप्रेटर इनपुट स्क्रिप्ट वाली डायरेक्टरी में `hello.py` नाम की फ़ाइल खोजता है और फिर `PYTHONPATH` पर्यावरण वेरिएबल द्वारा निर्दिष्ट डायरेक्टरी की सूची में।

उदाहरण: फिबोनैकी मॉड्यूल बनाएं

fibonacci.py बनाएं


def fib(n):
    # n तक फिबोनैकी श्रृंखला लिखें
    a, b = 0, 1
    while b < n:
        print(b, end=' ')
        a, b = b, a+b
    print()

def fib2(n):
    # n तक फिबोनैकी श्रृंखला लौटाएं
    result = []
    a, b = 0, 1
    while b < n:
        result.append(b)
        a, b = b, a+b
    return result

मॉड्यूल उपयोग करें

अब अपना टर्मिनल खोलें और इस फ़ाइल वाली डायरेक्टरी में `cd` कमांड से जाएं और पायथन शेल खोलें। निम्न स्टेटमेंट दर्ज करें:


>>> import fibonacci
>>> fibonacci.fib(1000)
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
>>> fibonacci.fib2(100)
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

आपने एक मॉड्यूल बनाया, इसे इम्पोर्ट किया और इसके फ़ंक्शन का उपयोग किया।

मॉड्यूल विकास के सर्वोत्तम अभ्यास

1. `__name__ == "__main__"` गार्ड जोड़ें


# fibonacci.py
def fib(n):
    a, b = 0, 1
    while b < n:
        print(b, end=' ')
        a, b = b, a+b
    print()

def fib2(n):
    result = []
    a, b = 0, 1
    while b < n:
        result.append(b)
        a, b = b, a+b
    return result

if __name__ == "__main__":
    # डेमो/टेस्ट कोड
    print("फिबोनैकी डेमो:")
    fib(100)

2. डॉकस्ट्रिंग जोड़ें


"""
फिबोनैकी श्रृंखला उत्पन्न करने के लिए मॉड्यूल।
"""

def fib(n):
    """n तक फिबोनैकी श्रृंखला प्रिंट करें।"""
    ...

3. टाइप हिंट्स जोड़ें (पायथन 3.5+)


def fib2(n: int) -> list[int]:
    ...

4. `__all__` निर्यात सूची परिभाषित करें


__all__ = ['fib', 'fib2']

पैकेज बनाना (एकाधिक मॉड्यूल)


myproject/
├── mypackage/
│   ├── __init__.py
│   ├── module1.py
│   └── module2.py
├── setup.py
├── README.md
└── tests/

अधिक जानकारी

मॉड्यूल और उन्हें बनाने के तरीके के बारे में अधिक पढ़ें पायथन डॉक्स ट्यूटोरियल में: https://docs.python.org/2/tutorial/modules.html

  1. पायथन प्रोग्राम में कैसे जांचें कि दी गई संख्या फाइबोनैचि नंबर है या नहीं? पायथन प्रोग्राम में कैसे जांचें कि दी गई संख्या फाइबोनैचि नंबर है या नहीं?

    इस लेख में, हम नीचे दिए गए प्रॉब्लम स्टेटमेंट के समाधान के बारे में सीखेंगे: प्रॉब्लम स्टेटमेंट एक संख्या n दिए जाने पर, जांचें कि n फाइबोनैचि नंबर है या नहीं। हम सभी जानते हैं कि nth फाइबोनैचि नंबर पिछले दो फाइबोनैचि नंबर्स का योग होता है। लेकिन वे पुनरावृत्ति संबंध के अलावा एक दिलचस्प संबंध भी प

  1. पायथन प्रोग्राम: जांचें कि दी गई संख्या फाइबोनैचि संख्या है या नहीं पायथन प्रोग्राम: जांचें कि दी गई संख्या फाइबोनैचि संख्या है या नहीं

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे -समस्या कथनएक संख्या n दी गई है, जांचें कि क्या n एक फाइबोनैचि संख्या है या नहींहम सभी जानते हैं कि nth फाइबोनैचि संख्या पिछली दो फाइबोनैचि संख्याओं का योग है। लेकिन वे पुनरावृत्ति संबंध के अलावा एक दिलचस्प संबंध भी प्रदान करते हैं।

  1. पायथन getpass मॉड्यूल पायथन getpass मॉड्यूल

    पायथन की स्टैंडर्ड लाइब्रेरी के getpass मॉड्यूल में दो फ़ंक्शन्स परिभाषित हैं। वे तब उपयोगी होते हैं जब भी टर्मिनल-आधारित एप्लिकेशन को यूजर क्रेडेंशियल्स मान्य करने के बाद ही एक्ज़ीक्यूट करने की आवश्यकता होती है। getpass() यह फ़ंक्शन यूजर को पासवर्ड दर्ज करने के लिए प्रेरित करता है। डिफ़ॉल्ट रूप से