面向对象-常用函数

Posted lws865

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象-常用函数相关的知识,希望对你有一定的参考价值。

issubclass()
作用:检测一个类是否是另一个类的子类
格式:issubclass(子类,父类)
返回值:布尔值
注意事项:只要存在于继承关系中 就成立

1 #issubclass
2 class Father(object):
3     pass
4 class Son(Father):
5     pass
6 result = issubclass(Son,object)
7 print(result)
8 #输出结果:True

 

isinstance()
作用:检测一个对象是否是指定类的实例
格式:isinstance(对象,类)
返回值:布尔值

1 #isinstance
2 class Monkey:
3     pass
4 class Human:
5     pass
6 ren = Human()
7 result = isinstance(ren,(Monkey,Human))
8 print(result)
9 #输出结果:True

 

hasattr()
作用:检测类/对象是否包含指定名称的成员
格式:hasattr(对象,成员名称)
返回值:布尔值
注意:可以检测类也可以检测对象,只要可以访问就算存在

 1 #hasattr()
 2 class Human:
 3     #成员属性
 4     age = 1
 5     sex = man
 6     #成员方法
 7     def cry(self):
 8         print(555555)
 9 #对类进行成员检测
10 result = hasattr(Human,smile)
11 print(result)
12 #输出结果:False
13 #实例化对象
14 ren = Human()
15 result = hasattr(ren,age)
16 print(result)
17 #输出结果:True

 

getattr()
作用:获取类.对象的成员值
格式:getattr(对象,成员名称,默认值)
返回值:不确定

 1 #getattr()
 2 class Monkey:
 3     #属性
 4     age = 10
 5     sex = 
 6     color = golden
 7     #方法
 8     def say(self):
 9         print(叽叽叽叽~)
10 #实例化对象
11 houzi = Monkey()
12 #获取猴子的颜色
13 print(houzi.color)#语法方式
14 #输出结果:golden
15 
16 result = getattr(houzi,color)#函数方式
17 print(result)
18 #输出结果:golden
19 
20 #获取不存在的成员
21 #print(houzi.name)
22 #输出结果:AttributeError: ‘Monkey‘ object has no attribute ‘name‘
23 
24 result = getattr(houzi,name,小猴子~)
25 print(result)
26 #输出结果:小猴子~

 

setattr()
作用:设置类/对象的成员值
格式:setattr(对象,成员名称,设置的值)
返回值:无

 1 #setattr()
 2 class Monkey:
 3     #属性
 4     age = 10
 5     sex = 
 6     color = golden
 7     #方法
 8     def say(self):
 9         print(叽叽叽叽~)
10 #实例化对象
11 houzi = Monkey()
12 print(houzi.__dict__)
13 #输出结果:{}
14 
15 #设置对象成员
16 #houzi.name = ‘小悟空‘#语法方式
17 #houzi.color = ‘黑色‘
18 setattr(houzi,weight,100斤)#函数方式
19 print(houzi.__dict__)
20 #输出结果:{‘weight‘: ‘100斤‘}

 

delatter()
作用:删除类.对象的成员
格式:delattr(对象,成员名称)
返回值:无

 1 #delattr()
 2 class Monkey:
 3     #属性
 4     age = 10
 5     sex = 
 6     color = golden
 7     #方法
 8     def __init__(self):
 9         self.name = xwk
10         self.height = 100
11     def say(self):
12         print(叽叽叽叽~)
13 #实例化对象
14 houzi = Monkey()
15 print(houzi.__dict__)
16 #输出结果:{‘name‘: ‘xwk‘, ‘height‘: 100}
17 
18 #del houzi.name #语法方式
19 delattr(houzi,height)
20 print(houzi.__dict__)
21 #输出结果:{‘name‘: ‘xwk‘}

 


dir()
作用:获取对象可以访问的所有成员的列表

property()
作用:设置描述符操作的函数

以上是关于面向对象-常用函数的主要内容,如果未能解决你的问题,请参考以下文章

常用Javascript代码片段集锦

php面向对象常用概念

Scala的面向对象与函数编程

重修课程day26(面向对象6之反射,内置函数和常用模块)

python第六天:一些常用函数,面向对象入门

C#常用代码片段备忘