面向对象(类和对象,面向对象实现方法),类里面的self,类外面添加和获取对象属性,类里面获取对象属性,魔法方法__init__()带参数的__init__(),__str__(),__del__()

面向对象

类和对象

'''
面向对象编程过程中,有两个重要组成部分:类和对象
类和对象的关系:用类创造对象
'''

# 类
类是对一系列具有共同特征和行为的事物的统称,是一个抽象的概念,不是真实存在的事物
特征即是属性
行为即是方法

# 对象
对象是类创建出来的真实存在的事物

面向对象实现方法

# 定义类
class 类名():
    代码
    ......
类名要满足标识符命名规则,同时遵循大驼峰命名习惯(首字母大写)

# 创建对象
对象名 = 类名()

# 使用体验
class Wash():
    def mood(self):
        print('洗刷刷')

haier = Wash()
haier.mood()

类里面的self

self指的是调用该函数的对象

class Wash():
    def mood(self):
        print('洗刷刷')
        print(self)

haier = Wash()
print(haier)
haier.mood()

huawei = Wash()
print(huawei)
huawei.mood()

<__main__.Wash object at 0x0000022DEAE0ACF8>
洗刷刷
<__main__.Wash object at 0x0000022DEAE0ACF8>
<__main__.Wash object at 0x0000022DEAE0ADA0>
洗刷刷
<__main__.Wash object at 0x0000022DEAE0ADA0>

类外面添加和获取对象属性

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

class Wash():
    def mood(self):
        print('洗刷刷')
        print(self)

haier = Wash()
haier.a = 5
haier.b = 10
print(haier.a,haier.b)

5 10

类里面获取对象属性

语法:
self.属性名

class Wash():
    def mood(self):
        print('洗刷刷')
        print(self)
    a = 10
    def pr(self):
        print(self.a)
        print(self.b)

haier = Wash()
haier.b = 5
haier.pr()

魔法方法

__xx__()的函数叫做魔法方法,指的是具有特殊功能的函数

_init_()

作用:
初始化对象
注意:
__init__()方法,在创建一个对象时默认被调用,不需要手动调用
__init__(self)中的self参数,不需要开发者传递,解释器会自动把当前的对象引用传递过去

class Wash():
    def __init__(self):
        self.a = 5
        self.b = 10
    def pr(self):
        print(self.a,self.b)

haier = Wash()
haier.pr()

5 10

带参数的__init__()

class Wash():
    def __init__(self, a, b):
        self.a = a
        self.b = b
    def pr(self):
        print(self.a,self.b)

haier = Wash(10, 10)
haier.pr()

huawei = Wash(100, 100)
huawei.pr()

10 10
100 100

__str__()

作用:
当使用print输出对象的时候,默认打印对象的内存地址。如果定义了__str__()方法,那么就会打印在这个方法中return的数据
class Wash():
    def __init__(self, a, b):
        self.a = a
        self.b = b
    def __str__(self):
        return '这是洗衣机公共类'

haier = Wash(10, 10)
print(haier)

这是洗衣机公共类

__del__()

作用:
当删除对象时,python解释器会默认调用__del__()函数
class Wash():
    def __del__(self):
        print('洗衣机公共类已被删除')

haier = Wash()

洗衣机公共类已被删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员shy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值