Python面向对象(一)

对象与方法

1. dir()函数

python中函数、变量、数据都是对象,采用 dir(对象名) 可以查看对象所具有的方法列表。

2. 引用

分别使用类创建两个一样但独立建立的对象(对象名不同),其也是两个完全独立的对象,它们两个在内存中分别独自占用不同的内存地址,对象名关联到该地址,可以用print(对象名)查看对象在内存中的地址。


对象的内置方法和属性

1. 对象初始化方法__init__()

当使用对象名 = 类名()创建一个对象时,python解释器会自动:

  1. 为该对象在内存中分配空间;
  2. 自动调用初始化方法__init__()设置属性的初始值(无论__init__()方法又没用显示地包含在类定义中)。
  3. __init__()方法是对象的一个内置方法,专门用来定义一个类有那些属性, 在__init__()方法中的语句会在创建对象时自动执行。
  4. 如果开始不知道给属性赋什么值,则可以在初始化属性时使用关键字None,即:
    self.属性名 = None

2.销毁对象时自动方法__del__()

当一个对象从内存中删除前,会自动调用__del__()方法.
对象的生命周期:

  1. 一个对象从创建类名开始,生命周期开始,创建时会自动调用__init__()方法;
  2. 在对象生命周期内,可以访问对象属性,调用对象方法;
  3. 一个对象的__del__()方法一旦被调用,对象将被销毁。

3.内置方法__str__()

python中用print()输出对象变量时,默认输出该变量由那个类创建以及该对象在内存中的地址,如果希望使用print()函数输出对象时自定义打印内容,可自定义内置__str__()方法。使用__str__()方法时必须返回字符串。
示例:

class Cat():

    def __init__(self, new_name):
        self.name = new_name
        print('%s cat is comming.' % self.name)
        
    def __del__(self):
        print('%s cat has gone.' % self.name)

    def __str__(self):
        return "It's a cat named [%s]" % self.name

# creat an object
tom = Cat('Tom')
print(tom)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

E. Zhao

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

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

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

打赏作者

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

抵扣说明:

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

余额充值