亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Python 中類別也是物件

在了解元類之前,我們先進一步理解 Python 中的類,在大多數(shù)程式語言中,類別就是一組用來描述如何產(chǎn)生一個物件的程式碼片段。在 Python 中這一點也是一樣的。

class ObjectCreator(object):
    pass
mObject = ObjectCreator()
print(mObject)

輸出結(jié)果:

<__main__.ObjectCreator object at 0x00000000023EE048>

但是,Python 中的類別有一點跟大多數(shù)的程式語言不同,在 Python 中,可以把類別理解成也是一種物件。對的,這裡沒有寫錯,就是對象。

為什麼呢?

因為只要使用關(guān)鍵字 class ,Python 解釋器在執(zhí)行的時候就會建立一個物件。

如:

class ObjectCreator(object):
    pass

當(dāng)程式運行這段程式碼的時候,就會在記憶體中建立一個對象,名字就是ObjectCreator。這個物件(類別)本身擁有創(chuàng)建物件(類別實例)的能力,而這就是為什麼它是一個類別的原因。但是,它的本質(zhì)仍然是一個對象,於是我們可以對它做如下的操作:

class ObjectCreator(object):
    pass
def echo(ob):
    print(ob)
mObject = ObjectCreator()
print(mObject)
# 可以直接打印一個類,因為它其實也是一個對象
print(ObjectCreator)
# 可以直接把一個類作為參數(shù)傳給函數(shù)(注意這里是類,是沒有實例化的)
echo(ObjectCreator)
# 也可以直接把類賦值給一個變量
objectCreator = ObjectCreator
print(objectCreator)

輸出的結(jié)果如下:

<__main__.ObjectCreator object at 0x000000000240E358>
<class '__main__.ObjectCreator'>
<class '__main__.ObjectCreator'>
<class '__main__.ObjectCreator'>
繼續(xù)學(xué)習(xí)