zoukankan      html  css  js  c++  java
  • issubclass ,isinstance,反射

    issubclass() 函数

    issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类。

    语法

    以下是 issubclass() 方法的语法:

    issubclass(class, classinfo)

    如果 class 是 classinfo 的子类返回 True,否则返回 False。


    class A: pass class B(A): pass print(issubclass(B,A)) # 返回 True


    Python中的isinstance函数

     
    isinstance是Python中的一个内建函数
    语法:
    isinstance(object, classinfo)
     
    如果参数object是classinfo的实例,或者object是classinfo类的子类的一个实例, 返回True。如果object不是一个给定类型的的对象, 则返回结果总是False。
    如果classinfo不表示一个类(类型对象), 那么它要么是一个类的元组, 或者递归地包含这样的(由数据类型构成的)元组.其他的序列类型是不被允许的。
    如果classinfo不是一种数据类型或者由数据类型构成的元组,将引发一个TypeError异常。
     
    举例:
    >>> isinstance(1, int)
    True
    >>> isinstance(1.0, float)
    True
     
    >>>isinstance(a,dict)  判断对象a是否为字典,如果为真,会打印True,如为假,打印False。
     
     

     

    反射------------------------------------
    在Python中反射的表现形式是:
    通过字符串的形式操作对象相关的属性
    在Python中通过四个函数实现反射:

    函数名意义
    hasattr(obj,name) 判断object中有没有一个name字符串对应的方法或属性
    getattr(obj,name, default) 检查obj.__dict__中有没有name这个键值,有则不做任何处理,没有则报错
    setattr(obj,name,value) 等价于obj.name=value
    delattr(obj,name) 等价于del obj.name
  • 相关阅读:
    HTML: vertical algin Big/small div in same row (bootstrap)
    unix时间转换
    chrome工具分析
    DNF 包管理器
    安装nodejs
    location属性解释
    angular深入理解途径
    ui-router与ngRoute
    angular $location服务获取url
    Python文件操作
  • 原文地址:https://www.cnblogs.com/fushaunglin/p/9527189.html
Copyright © 2011-2022 走看看