class ClassA: pass
mytype = type(ClassA)
使用mytype,你如何創建一個ClassA的實例?創建一個實例,我已經有了類型
請注意,我不尋找這是我的答案:)
instance = ClassA()
我知道,在這個例子中,這就是你需要做的,但假設你有這種類型(MYTYPE) ,你對它一無所知,你需要創建它的一個實例。
我試着只調用mytype(),它返回一個錯誤,指出該類型()需要1或3個參數。我想這些參數可能與你想要傳入正在創建的對象的init方法的任何參數有關。
注意:我已經看到一些關於如何創建一個給定一個字符串來表示其完全限定名的對象的問題。請注意,在這裏,我已經有一個類型,所以它有點不同?我認爲?
編輯...我希望我可以做以下.NET代碼相當於:
class A {}
class Program
{
static void Main(string[] args)
{
Type type = typeof(A);
// Given the type, I can create a new instance
object new_instance = Activator.CreateInstance(type);
}
}
我曾以爲,在Python中,類(ClassA的)給了東西回來,我可以在以後使用創建ClassA的一個實例。看起來我誤解了Python中的類型。
MYTYPE =類型(ClassA的)會給你一個類的對象。我懷疑這不是你的意思。 –
這就是我的意思,我認爲:)如果這有助於澄清任何事情,請參閱我的.Net上面的編輯。 –