您的位置:首页 > 编程语言 > Python开发

一、Python魔法方法 -- 构造和解析

2016-09-08 09:08 519 查看

Python魔法方法 – 构造和解析

一: init(self[,…])方法

init(self[,…]) 方法相当于其他语言中的构造函数,实例化对象的时候,首先会调用该方法

class Rectangle:
def __init__(self,x,y):
self.x = x
self.y = y
def getPeri(self):
return (self.x +self.y)*2
def getArea(self):
return self.x * self.y
rect = Rectangle(3,4)
print(rect.x)
>>> 3
print(rect.getPeri())
>>> 14


init构造函数不能有返回值,否则报错

class A:
def __init__(self):
return "a"
>>> TypeError: __init__() should return None, not 'str'


一个类被创建的时候,其实第1个被调用的方法是new函数,它必须返回1个类,可以是本身,也可以是其他类new(class[…]),主要用于重写不可改变的“类”,例如“str”类

class CapStr(str):
def__new__(cls,string):
string = string.upper()
return str.__new__(cls,string)
a = CapStr("I love you ")
print(a)
>>>I LOVE YOU


del(self)析构函数,垃圾回收,当没有任何变量引用该对象的时候调用,具体用法还不是太明白,需要重新看书学习
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python