self

我們在類別(class)裡面都會看到一個self,而這個self其實就是指向自己實體的意思

class Cat:

    def memory_address(self):
        print(self)

animal = Cat()
animal.memory_address() #print <__main__.Cat object at 0x033D2030>
animal2 = Cat()
animal2.memory_address() #print <__main__.Cat object at 0x033D2039>

如上述程式碼

我們在memory_address這個method輸出 self到螢幕上,會看到這個實體(instance)在哪個記憶體位置(memory address)

而宣告了變數animal, animal2,輸出的結果各不相同,這代表了我們再建立實體的時候,系統會指派不同的記憶體給不同的實體

所以兩個實體之間是各自獨立的,因為他們並不再同一個記憶體位置上。

results matching ""

    No results matching ""