02面向对象编程-1面向对象基础

1.类、对象

1.1 理解类用于创建对象 (类:设计;对象:程序)

1.1.1 定义类:

class 类名

1.1.2 定义对象:

对象名=类名()

1.2 类和对象的使用

1.2.1 例子:

自定义一个类,创建对象并调用其方法

class Washer(): #定义了一个Hhh类
    def simke(self): #定义一个函数simke
        print('洗衣服')
        print(self)
        
haier=Washer() #定义了一个haier的对象
haier.simke() #调用实例方法simke

1.2.2 self:调用该函数的对象

等同于将haier对象传入(self)中

1.3 一个类创建多个对象

一个类可以创建多个对象,不同对象中的self内存地址相同

1.4 添加和获取对象属性

1.4.1 类外面添加对象属性

语法:对象名.属性名=值

class Washer():  # 定义了一个Washer类
    def simke(self):  # 定义一个函数simke
        print('洗衣服')

haier1 = Washer()  # 定义了一个haier的对象
haier1.width=400 #添加属性 对象名.属性名=值

###1.4.2 类外面获取对象属性

语法:对象名.属性名

class Washer():  # 定义了一个Washer类
    def simke(self):  # 定义一个函数simke
        print('洗衣服')
        

haier1 = Washer()  # 定义了一个haier的对象

haier1.width=400 #添加属性 对象名.属性名=值

print(f'洗衣机的高度位{haier1.width}') #类外面获取对象属性

1.4.3 类里面获取对象属性

语法:self.属性名

class Washer():  
    def simke(self):  
        print('洗衣服')

    def print_info(self):
        print(f'洗衣机的宽度{self.width}') #类里面获取对象属性

haier1 = Washer()  # 定义了一个haier的对象

haier1.width=400 

haier1.print_info() #对象调用

2.魔法方法

格式为 __xx__() 的函数即为魔法方法,指的是具有特殊功能的函数

2.1 __ init __()

2.1.1 __ init __()方法的作用:初始化对象。

class Washne():
    def __init__(self):
        self.width=100
        self.height=200

    def print_info(self):
        #类里面调用实例属性
        print(self.height,self.width)

haier1=Washne()
haier1.print_info()

注:

__init__()方法,在创建一个对象时默认被调用,不需要手动调用

__init__(self)中的self参数,不需要开发者传递,python解释器会自动把当前的对象引用传递过去。

2.1.2 带参数的 __ init __()

可用于传参

class Waner():
    def __init__(self,width,height):
        self.width=width
        self.height=height

    def print_info(self):
        print(self.width,self.height)

haier1=Waner(10,20)
haier1.print_info()

haier2=Waner(100,200)
haier2.print_info()

2.2 __ str __()

当使用print输出对象时,默认打印对象的内存地址,如果定义__ str __方法,那么就会打印从这个方法中return的数据

class Waner():
    def __init__(self,height,wight):
        self.height=height
        self.wight=wight

    def __str__(self):
        return '解释说明,类的说明或者对象状态的说明'

haier1=Waner(1,2)
print(haier1)

2.3 __ del __()

当删除对象时,python解释器也会默认调用__ del __()方法。

class Waner():
    def __init__(self):
        self.wight=300

    def __del__(self):
        print('对象已被删除')

haier=Waner()

你可能感兴趣的:(python,web,数学建模,python,开发语言)