• day 22


    day 22 classmethod,staticmethod,uuid,isinstance,issubclass,反射,魔法方法,单列

    01.classmethod:一个类方法

    1. 是一个装饰器,可以装饰给类内部的方法,使该方法绑定给类来使用
    2. 类的绑定方法;由类来调用,会将类当作第一个参数传给该方法
    3. 主要用于编写源码

    02.staticnethod;非绑定方法

    1. 是一个装饰器,可以装饰给类内部的方法,使该方法变成一个普通函数,可以不接收任何参数

    03.uuid;生成字符串的加密模块

    1. uuid4;通过当前时间戳生成一串字符串

    04.isinstance;用来判断对象是否为该类的实例

    1. Isinstance(对象,类) 判断参数1是否是参数2的一个实例
    2. 对象.__class__获取对象的类

    05.issubclass;用来判断一个类是否为另一个的子类

    1. issubclass(类1,类2) 判断参数1是否是参数2的一个子类

    06.反射

    1. 反射指的是通过字符串对,对象或类的属性进行操作
      1. hasattr(对象/类,属性名);判断属性;通过字符串,判断该字符串是否是对象或类的属性
      2. getattr(对象/类,属性名,默认值);获取属性;通过字符串,获取对象或类的属性,没有返回默认值
      3. setattr(对象/类,属性名,属性值);设置属性;通过字符串,修改对象或类的属性
      4. delattr(对象/类,属性名);删除属性;通过字符串,删除对象或类的属性
      5. 可以用来与用户交互

    07.魔法方法(类的内置方法)

    1. 凡是在类内部定义的,以__属性名__方式的属性,都称之为魔法方法,又称为类的内置方法

    2. 魔法方法会在某些条件成立时触发.

    3. __init__(self): # 在调用类时触发
      __str__(self): # 在打印对象时触发,必须有字符串返回值
      __del__(self): # 会在程序结束时触发,在垃圾回收机制将对象销毁前执行
      __getattr__(self,item): # 在对象.属性,没有该属性时触发
      __setattr__(self,key,value): # 在对象.属性=属性值时触发,不会再执行对象.属性=属性值
      __call__(self, *args, **kwargs): # 在对象被调用时触发
      __new__(cls,*more): # 会在__init__被执行前触发
      
      

    08.单列模式

    1. 单个实例,对完全相同的对象只实例化一次

    2. 为了减少内存占用

    3. 在运行类内部__init__之前,先判断这个对象是否存在,存在直接返回该对象,不存在则实例化

  • 相关阅读:
    转:页面Postback后定位滚动条不再难
    c:\windows\microsoft.net\framework\v1.1.4322\Config\machine.config 行: 198
    WebService相关概念和原理(中间层)
    JS 根据DropDownList的Text选中某一项
    javascript事件列表解说
    AJAXUpdateProgress设置CSS元素POSITION的使动画居中 & loading的Info
    ASP.NET2.0 Skin+CSS 测试
    C# 日期格式转换(转)
    编写代码创建DataTable对象
    ToString 格式化数值
  • 原文地址:https://www.cnblogs.com/luocongyu/p/11668799.html
Copyright © 2020-2023  润新知