Python学习笔记:在面向对象的开发中,与“对象”相关的内置函数和方法(\init\\\\\\\\\\\\\\\\\\\,之,时,initstrdel,等


1. dir 命令查看内置函数和方法

  • 打开 pycharm 中的 ipython 编译器
  • 创建一个对象 (文中创建了一个列表对象 list
  • 使用 dir 命令来查看对象的所有内置函数和方法
    在这里插入图片描述

2. 不同方法的作用

2.1 __init__() 方法:

  • 在定义一个类 class 的时候,如果想为这个 class 添加一些属性,需要先使用 __init__() 方法来进行初始化,例如:
class Cat:

     def __init__(self):
        self.name = "Tom"

tom = Cat()
print(tom.name)

----> 输出结果: Tom

如果不使用 def __init__(self): 则无法使用 self 来进行属性定义

2.2 __del__() 方法:

如果想让程序在一个变量销毁之前再进行一些操作,那么就使用 __del__() 方法

class Cat:

     def __init__(self):
        self.name = "Tom"
        print("hello")

     def __del__(self):
        print("再见")


tom = Cat()


------> 输出结果:hello
                 再见

输出 “再见” 之后,这个 tom 变量的生命周期就结束了

2.3 __str__() 方法:

如果不使用 __str__() 方法,那么将调用类的变量 tom 进行打印输出,会得到这个变量的地址值以及这个变量所属的类,如下:

class Cat:

     def __init__(self):
        self.name = "Tom"

tom = Cat()
print(tom)


-----> 输出结果: <__main__.Cat object at 0x0000020139FD67B8>

但如果我们现在想改变返回的内容,我们想设计这个类返回的信息,那么就可以使用 __str__() 方法 来实现这个功能:

class Cat:

    def __init__(self):
        self.name = "Tom"

    def __str__(self):
        return "我是一只猫"

tom = Cat()
print(tom)

-----> 输出结果:我是一只猫

很显然,这个时候,打印 tom 这个变量的默认值不再是简单的地址和类型,而是我们想让它返回的字符串