python-面向对象编程-内置方法

Posted OYxing

tags:

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

面向对象的内置方法(举例)

一、isinstance(obj,cls)和issubclass(sub,super)

1、    检查boj是否为对象(实例)  

技术分享图片
class Foo(object):
    pass

obj = Foo()

print(isinstance(obj, Foo))
判断谁是谁的对象(实例)

2、    检查sub是否子类

技术分享图片
class Foo(object):
    pass

class sub(Foo):
    print(sub)
obj = Foo()

issubclass(Bar, Foo)
判断谁是谁的类

二、item系列——把对象做成像字典对象的东西,从而让操作者可以将像对象那样的操作。

技术分享图片
class Foo:
    def __init__(self, name):
        self.name = name

    def __getitem__(self, item):
        print(self.__dict__[item])

    def __setitem__(self, key, value):
        self.__dict__[key] = value

    def __delitem__(self, key):
        print(del obj[key]时,我执行)
        self.__dict__.pop(key)

    def __delattr__(self, item):
        print(del obj.key时,我执行)
        self.__dict__.pop(item)


f1 = Foo(sb)
f1[age] = 18
f1[age1] = 19
del f1.age1
del f1[age]
f1[name] = alex
print(f1.__dict__)
把自定义的对象做成字典对象

三、__str__(把类中的属性定制成str 用户打印对象时,将信息返回给用户)

技术分享图片
class People:
    def __init__(self,name,age):
        self.name = name
        self.age = age

    def __str__(self):
        return <name> : %s <age> : %s %(self.name,self.age)

p1 = People(alex,12)
print(p1)
类属性定制成字符串

四、__del__(回收资源)

技术分享图片
class Foo:

    def __del__(self):
        print(执行我啦)

f1=Foo()
# del f1
print(------->)

#输出结果
# ------->
# 执行我啦
(析构方法)回收资源

 

以上是关于python-面向对象编程-内置方法的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段9——JS中的面向对象编程

Python基础-第七天-面向对象编程进阶和Socket编程简介

16.Python内置函数?面向对象-类-对象

python基础-面向对象高级编程

Python面向对象编程02:深度认识类class

Python面向对象编程02:深度认识类class