python特殊函数__getitem__()

  • ​ 对对象按照下标取出元素,使用特殊函数__getitem__()

  • 以斐波那契数列作为对象,实现用下标得到相应类的实例:

    • 1
      2
      3
      4
      5
      6
      7
      8
      class (object):
      def __init__(self):
      self.a, self.b = 1, 1

      def __getitem__(self, n):
      for x in range(n):
      self.a, self.b = self.b, self.a + self.b
      return self.a
    • 1
      2
      3
      4
      5
      >f=Fab()
      >f[2]
      2
      >f[10]
      89