2. 对象的特殊属性
__class__
属性
作用:
用于绑定创建此对象的类。
可以借助于此属性来访问创建此对象(实例)的类。
示例
class Dog:
'''Dog是人类最亲近的小动物'''
def __init__(self, c, k):
self.color = c # 颜色
self.kind = k # 品种
dog1 = Dog('黄色', '金毛')
# __class__ 属性
print(dog1.__class__)
print(dog1.__class__ is Dog)
运行结果
<class '__main__.Dog'>
True
__dict__
属性
作用:
用于绑定一个存储此对象自身属性和值的字典。
如果类内有 __slots__
列表,则对象不存在 __dict__
属性。
示例
class Dog:
'''Dog是人类最亲近的小动物'''
def __init__(self, c, k):
self.color = c # 颜色
self.kind = k # 品种
dog1 = Dog('黄色', '金毛')
# __dict__ 属性
print(dog1.__dict__)
for attr in dog1.__dict__:
print('属性:', attr, '值', getattr(dog1, attr))
运行结果
{'color': '黄色', 'kind': '金毛'}
属性: color 值 黄色
属性: kind 值 金毛