Python笔记(二十一)_内置函数、内置方法

内置函数

issubclass(class1,class2)

判断class1类是否为class2类的子类,返回True和False

 

注意1:类会被认为是自身的子类

 >>>class Student():

   pass 

>>>issubclass(Dog,Dog)

True

注意2:class2可以是一个包含多个类的元组

 >>>class Teacher():

  pass

>>>issubclass(Student,(Student,Teacher))

True

注意3:所有类都是object的子类

>>> issubclass(Dog,object)

True

 

 isinstance(instance,class)

判断instance是否为class类的实例化对象,返回True和False

 

注意1:

如果instance不传实例对象,结果永远为False

>>> isinstance(student,Student)

True

>>> isinstance(Student,Student)

False

>>> isinstance('demi',Student)

False

注意2:

如果class不传类或由类组成的元组,则抛出TypeError异常

>>> isinstance(teacher,(Student,Teacher))

True

>>> isinstance(teacher,teacher)

TypeError: isinstance() arg 2 must be a type or tuple of types

 

内置方法

hasattr(object,attribute)

判断object对象是否有attribute属性,返回True和False;其中属性需要用字符串的引号括起来,否则会被当做变量

 getattr(object,attribute[,default])

判断object对象是否有attribute属性,可返回用户自定义;如果object对象不包含attribute属性,则打印default

 setattr(object,attribute,value)

设定object对象中的attribute属性的值为value;如果object对象不包含attribute属性,则新建该属性并赋值

 delattr(object,attribute)

删除object对象中的attribute属性;当指定attribute不存在时,抛出AttributeError异常

 property(fget,fset,fdel)

用属性来访问属性,以函数的形式来定义一个属性,括号中传入方法名称

 

class C:

    def __init__(self,x=0):

        self.x = x

    def getx(self):

        return self.x

    def setx(self,value):

        self.x = value

    def delx(self):

        del self.x

y = property(getx,setx,delx)

如果 c 是 C 的实例化:c.y 将触发 geattr;c.y = value 将触发 seattr;del c.y 触发 delattr

转载于:https://www.cnblogs.com/demilisi/p/11048174.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值