赞
赏
Python 的 实例属性 也是可以像 类属性 一样进行动态的增加和 删除。动态增加的实例属性只属于实例对象私有,而不是所有对象公有。
ins.attr = value
参数 | 描述 |
---|---|
ins | 需要动态添加属性的对象。 |
attr | 需要添加的属性名。 |
value | 需要添加的属性的值。 |
我们可以直接使用 “实例.属性 = 值” 的形式,给实例动态地添加一个实例属性。
给 Python 中的实例动态添加属性
print("嗨客网(www.haicoder.net)")
class Student:
score = 99.95
def __init__(self):
pass
stu = Student()
stu1 = Student()
stu.course = "Python"
stu1.address = "ShangHai"
print("Course =", stu.course, "Score =", stu.score)
print("Address =", stu1.address, "Score =", stu1.score)
程序运行后,控制台输出如下:
我们创建了一个类 Student,接着,为该类添加了一个类属性 score
,和一个 __init__
方法。
接着,我们实例化了两个 Student 类的实例,分别为 stu 和 stu1, 同时,我们动态地为 stu 实例添加了一个 course 实例属性,动态地为 stu1 实例添加了一个 address 实例属性。
最后,我们可以分别访问各自实例动态添加的实例属性。
给 Python 中的实例动态添加属性
print("嗨客网(www.haicoder.net)")
class Student:
score = 99.95
def __init__(self):
pass
stu = Student()
stu1 = Student()
stu.course = "Python"
stu1.address = "ShangHai"
print("Course =", stu.course, "Address =", stu.address)
print("Address =", stu1.address, "Score =", stu1.score)
程序运行后,控制台输出如下:
我们为实例 stu 添加了 course 属性,为实例 stu1 添加了 address 属性,最后,我们使用实例 stu 访问 address 属性,程序报错,因为动态添加的实例属性同样只属于本实例私有。
Python 的实例属性也是可以像类属性一样进行动态的增加和删除。动态增加的实例属性只属于实例对象私有,而不是所有对象公有。Python 动态添加实例属性语法:
stu.attr = value
我们可以直接使用 “实例.属性 = 值” 的形式,给实例动态地添加一个实例属性。