• Python学习记录九


    1、构造方法和析构方法

      def __init__(self, value = 42):
        self.someValue = value

      def __del__

    2、调用未绑定的超类方法
      1) 直接在子类方法中调用父类方法
          def __init__(self):
          Bird.__init__(self):

      2) 使用super函数

          __metaclass__=type # super函数只在新式类中起作用

          def __init__(self):
            super(Songbird, self).__(init)__()

    3、基本的序列和映射规则

        __len__(self): 返回集合中所含项目的数量
        __getitem__(self.key):返回与所给键对应的值
        __setitem__(self, key, value):按一定的方式存储和key相关的value
        __delitem__(self,key):对比一部分对象操作时,必须删除和元素相关的键;对可修改对象操作时,并不是删除全部的对象,只是删除一些需要移除的元素

    4、属性
      (1)property 函数

          __metaclass__=type

          class Rectangle:
            def __init__(self):
              self.width = 0
              self.height = 0
            def setSize(self, size):
              self.width, self.height = size
            def getSize(self):
              return self.width, self.height

            size = property(getSize, setSize)

    5、迭代器

      __iter__ : 迭代器规则的基础
      __iter__方法返回一个迭代器,所谓的迭代器就是具有next方法(这个方法在调用时不需要任何参数)的对象。在调用next方法时,迭代器会返回它的下一个值;如果迭代器被调用,但是迭代器没有值可以返回,就会引发一个StopIteration异常

      class Fibs:
        def __init__(self):
          self.a = 0
          self.b = 1

        def next(self):
          self.a, self.b = self.b, self.a+self.b
          return self.a

        def __iter__(self):
          return self

    #调用
    fibs = Fibs()
    for f in fibs:
    print f
    if f > 1000:
    break

    6、生成器
    任何包含yield语句的函数成为生成器。每次产生一个值(使用yeild语句),函数就会被冻结:即函数停在那点等待被激活。函数被激活后就从停止的那里开始执行

  • 相关阅读:
    单张图片转PDF(基于Go语言实现)
    Django在前后端分离项目中,如何针对GET接口请求加入缓存机制
    Python3解决Nginx日志的中文乱码问题
    Python3通过Redis实现学生分数排行榜
    Jmeter之Json提取器用法收藏(非常给力的一篇!)
    H5和安卓的转义字符问题

    数组
    链表
    替换空格 JS算法题
  • 原文地址:https://www.cnblogs.com/songshu-yilia/p/5268787.html
Copyright © 2020-2023  润新知