【Python学习日记】B站小甲鱼:构造(init new)和析构(del)

魔法方法:比如__init__()这样被下划线包围的函数

 

__init__()方法

下面这个程序演示了定义了一个矩形的类型,并添加了得到周长和面积的方法。

class Rectangle:
    def __init__(self, x, y):
        self.x = x
        self.y = y

    def getPeri(self):
        return 2 * (self.x + self.y)

    def getArea(self):
        return self.x * self.y


rec = Rectangle(3, 4)
print(rec.getPeri())
print(rec.getArea())

注意:__init__()函数不能定义return,__init__()规定只能返回None

 

new  重写

class Capstr(str):
    def __new__(cls, string):
        string = string.upper()
        return str.__new__(cls, string)
str = Capstr("I like bb")
print(str)

 

del   析构器

函数在关闭的时候自动调用 略

 

posted @ 2020-09-12 18:21  JodyJoy  阅读(142)  评论(0编辑  收藏  举报