python的魔術方法

持續更新
類:Example
實例:example = Example()

__str__ 描述類的實例 print example

__repr__ 描述類 print Example

__call__ 調用實例 example() #=Example()()

__setattr__ 實例屬性賦值

__getattr__ 獲取實例屬性值

class Book(object):
    def __setattr__(self, name, value):
        if name == 'value':
            object.__setattr__(self, name, value - 100)
        else:
            object.__setattr__(self, name, value)
    def __getattr__(self, name):
        try:
            return object.__getattribute__(name)
        except:
            return name + ' is not found!'
    def __str__(self):
        return ' cost : ' + str(self.value)

c = Book()
c.value = 101
print c.value #1
print c
print c.Type

__slots__ 類所能包含的所有新建屬性,繼承自object類

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章