Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธี Instantiate Python Classes แบบ Dynamic

เพื่อ Instantiate Python Class เราต้องได้ Class Name ก่อน ทำได้ด้วยโค้ดต่อไปนี้

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

m คือ Class

เราสามารถ Instantiate Class นี้ได้ดังนี้

a = m()
b = m(arg1, arg2)  # passing args to the constructor