1. 程式人生 > >11-類中的__call__函數

11-類中的__call__函數

pre 神奇 class 函數 __call pri nes ali __init__

__call__是一個很神奇的特性,只要某個類型中有__call__方法,,我們可以把這個類型的對象當作函數來使用。

舉例:

>>>class Reader():

    def __init__(self,name,nationality):

      self.name = name

      self.nationality = nationality

    def __call__(self):

      print('Reader: %s    Nationality: %s' % (self.name, self.nationality))

>>>r = Reader('Annie','Chinese')

>>>r()

Reader:Annie  Nationality: Chinese

11-類中的__call__函數