在学习 Python __dict__属性 的过程中,很多初学者会感到困惑。其实,__dict__ 是 Python 中一个非常有用且常见的内置属性,它帮助我们理解对象和类内部是如何存储属性的。本文将从基础讲起,带你一步步掌握 Python对象字典 的使用方法。
__dict__ 是 Python 中几乎所有对象(包括类和实例)都拥有的一个特殊属性。它本质上是一个字典(dict),用于存储对象的可写属性。
当我们创建一个类的实例后,该实例会拥有自己的 __dict__,用来保存实例变量。
class Person: def __init__(self, name, age): self.name = name self.age = age# 创建实例p = Person("张三", 25)# 查看实例的 __dict__print(p.__dict__) 输出结果为:
{'name': '张三', 'age': 25} 可以看到,实例 p 的所有属性都以键值对的形式保存在 __dict__ 中。这说明 Python类实例属性 实际上是通过这个字典来管理的。
不仅实例有 __dict__,类本身也有。类的 __dict__ 存储了类属性、方法、静态方法等。
class Person: species = "Homo sapiens" # 类属性 def __init__(self, name): self.name = name def greet(self): return f"Hello, I'm {self.name}"# 查看类的 __dict__print(Person.__dict__) 输出会包含 'species'、'__init__'、'greet' 等键。注意:类的 __dict__ 是一个 mappingproxy 对象(只读字典),不能直接修改。
并非所有对象都有 __dict__。例如,使用 __slots__ 定义的类会禁用 __dict__ 以节省内存:
class Point: __slots__ = ['x', 'y'] def __init__(self, x, y): self.x = x self.y = yp = Point(1, 2)# print(p.__dict__) # 这行会报错!AttributeError __dict__ 是理解 Python内置属性 和对象模型的关键之一。通过它,我们可以窥探对象内部的属性存储机制,也能在开发中灵活操作对象属性。希望这篇教程能帮你彻底搞懂 Python __dict__属性!
—— 学完记得动手试试代码哦! ——
本文由主机测评网于2025-12-22发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/20251211375.html