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

पाइथन कक्षा को गतिशील रूप से कैसे लोड करें?


ऐसा कोई फ़ंक्शन उपलब्ध नहीं है जो पूरी तरह से योग्य वर्ग का नाम लेता है और कक्षा लौटाता है। हालांकि हम एक फ़ंक्शन को परिभाषित कर सकते हैं जिसमें यह कार्यक्षमता है।

उदाहरण

निम्न कोड ऐसे फ़ंक्शन का है।

def get_class( s ):
    parts = s.split('.')
    module = ".".join(parts[:-1])
    n = __import__( module )
    for comp in parts[1:]:
        n = getattr(m, comp)          
    return n

उस फ़ंक्शन का एक उपयोग उदाहरण

import datetime
def get_class( cls ):
    parts = cls.split('.')
    module = ".".join(parts[:-1])
    m = __import__( module )
    for comp in parts[1:]:
        m = getattr(m, comp)
    return m
print get_class('datetime.datetime').now()

आउटपुट

यह आउटपुट देता है

2018-01-23 14:04:09.843000



  1. जावास्क्रिप्ट फ़ाइल को गतिशील रूप से कैसे लोड करें?

    एक JavaScript फ़ाइल को गतिशील रूप से लोड करने के लिए निम्नलिखित कोड है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>

  1. मैं पाइथन मॉड्यूल को गतिशील रूप से कैसे आयात कर सकता हूं?

    पायथन मॉड्यूल को गतिशील रूप से आयात करने के लिए, आप importlib पैकेज के import_module(moduleName) फ़ंक्शन का उपयोग कर सकते हैं। आपके पास एक स्ट्रिंग के रूप में मॉड्यूलनाम होना चाहिए। उदाहरण के लिए, >>> from importlib import import_module >>> moduleName = "os" >>>

  1. पायथन में पर्यावरण त्रुटि अपवाद कैसे पकड़ें?

    पर्यावरण त्रुटि पायथन (ऑपरेटिंग सिस्टम, फाइल सिस्टम, आदि) के बाहर से आने वाली त्रुटियों के लिए आधार वर्ग है। पर्यावरण त्रुटि अपवाद स्टैंडरएरर वर्ग का एक उपवर्ग है। यह IOError और OSError अपवादों के लिए आधार वर्ग है। यह वास्तव में IOError और OSError जैसी उपवर्ग त्रुटियों के विपरीत नहीं उठाया गया है। I