欢迎访问宙启技术站
智能推送

了解Python中的内建对象(object())的用法

发布时间:2023-12-26 22:11:23

Python中的内建对象(built-in object)是一种特殊的对象,它是所有其他对象的基类,也称为根对象。内建对象是Python中的最高层级对象,包含了所有继承链的顶端。

内建对象的主要用途是提供对象所拥有的默认功能和行为。当我们创建一个新的对象时,它会自动继承内建对象的属性和方法。内建对象可以被视为所有其他用户自定义类的超类。

以下是内建对象的常用的方法和属性:

1. __init__():初始化对象的方法,在创建对象时自动调用。

class MyClass:
    def __init__(self, x, y):
        self.x = x
        self.y = y

obj = MyClass(3, 4)
print(obj.x, obj.y)  # 输出 3 4

2. __del__():销毁对象时被调用的方法。

class MyClass:
    def __del__(self):
        print("对象被销毁了")

obj = MyClass()
del obj  # 输出 "对象被销毁了"

3. __str__():将对象转换为字符串的方法。

class MyClass:
    def __str__(self):
        return "MyClass对象"

obj = MyClass()
print(obj)  # 输出 "MyClass对象"

4. __len__():获取对象长度的方法。

class MyList:
    def __init__(self):
        self.data = []

    def __len__(self):
        return len(self.data)

my_list = MyList()
my_list.data = [1, 2, 3, 4]
print(len(my_list))  # 输出 4

5. __getitem__():获取对象中的元素的方法。

class MyList:
    def __init__(self):
        self.data = []

    def __getitem__(self, index):
        return self.data[index]

my_list = MyList()
my_list.data = [1, 2, 3, 4]
print(my_list[2])  # 输出 3

6. __setitem__():设置对象中的元素的方法。

class MyList:
    def __init__(self):
        self.data = []

    def __setitem__(self, index, value):
        self.data[index] = value

my_list = MyList()
my_list.data = [1, 2, 3, 4]
my_list[2] = 5
print(my_list.data)  # 输出 [1, 2, 5, 4]

7. __iter__():返回一个用于迭代对象的迭代器的方法。

class MyList:
    def __init__(self):
        self.data = []

    def __iter__(self):
        return iter(self.data)

my_list = MyList()
my_list.data = [1, 2, 3, 4]

for item in my_list:
    print(item)  # 输出 1 2 3 4

通过使用内建对象提供的方法和属性,我们可以轻松地添加一些默认的行为和功能到我们的自定义类中。这使得我们可以更方便地处理对象和执行与对象相关的操作。