当前位置 博文首页 > python迭代器自定义类的具体方法

    python迭代器自定义类的具体方法

    作者:小妮浅浅 时间:2021-05-07 17:45

    1、说明

    迭代器还具有迭代用户定制类别的能力。迭代对象需要支持两种方式:_iter__()和next(),前者返回迭代本身,后者返回下一个元素。

    2、实例

    class example(object):
      def __init__(self,num):
        self.num=num
      def __iter__(self):
        return self
      def __next__(self):
        if self.num <= 0:
          raise StopIteration
        tmp = self.num
        self.num -= 1
        return tmp
      
    a = example(3)
    print(a.__next__())
    print(a.__next__())
    print(a.__next__())
    print(a.__next__())

    知识点扩展

    python自定义类并使用的方法

    class Person:
     def __init__(self, first, middle, last, age):
      self.first = first;
      self.middle = middle;
      self.last = last;
      self.age = age;
     def __str__(self):
      return self.first + ' ' + self.middle + ' ' + self.last + \
      ' ' + str(self.age)
     def initials(self):
      return self.first[0] + self.middle[0] + self.last[0]
     def changeAge(self, val):
      self.age += val
    myPerson = Person('Raja', 'I', 'Kumar', 21)
    print(myPerson)
    myPerson.changeAge(5)
    print(myPerson)
    print(myPerson.initials())

    运行结果如下:

    Raja I Kumar 21
    Raja I Kumar 26
    RIK
    js
    下一篇:没有了