python-类属性和实例属性

目录

一.概念

1.实例属性:

2.类属性(静态属性):

(1)类属性的使用方式

二.注意事项

(1).对于不可变数据类型

(2).对于可变数据类型

三.实例

1.定义一个不可变数据类型变量,然后调用

2.用类对象和实例对象改变类属性值

3.使用实例对象修改可变数据类型的元素值​

4.使用实例对象给类属性赋值​


一.概念

1.实例属性:

在实例对象中定义的属性

2.类属性(静态属性):

在类对象(也就是类)中定义的属性,并且多个实例对象之间共享一份类属性。

(1)类属性的使用方式

类名.类属性

也可以使用 对象名.类属性

 

二.注意事项

(1).对于不可变数据类型

对象名.静态属性名称=值 是给对象中添加属性名称,而不是进行修改。

(2).对于可变数据类型

    如果对象是修改可变数据类型变量中的数据,都有影响。

    如果是从新给可变数据类型变量赋值,这是给该对象添加属性。

三.实例

1.定义一个不可变数据类型变量,然后调用

python-类属性和实例属性_第1张图片

结果是:

python-类属性和实例属性_第2张图片

2.用类对象和实例对象改变类属性值

class aa:
    a = '1'
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def __str__(self):
        return '姓名是:{},年龄是{}'.format(self.name,self.age)
b = aa('老王',20)
print(b.a)

python-类属性和实例属性_第3张图片

得到的结果:

python-类属性和实例属性_第4张图片

3.使用实例对象修改可变数据类型的元素值

class aa:
    a = []
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def add__name(self,name):
        if len(name) < 3:
            self.a.append(name)
    def __str__(self):
        return '姓名是:{},年龄是{}'.format(self.name,self.age)
b = aa('老王',20)
b.add__name('小王')
b.add__name('小方')
print(aa.a)
print(b)

python-类属性和实例属性_第5张图片

结果显示如下:

python-类属性和实例属性_第6张图片

4.使用实例对象给类属性赋值

 

 

python-类属性和实例属性_第7张图片

结果显示如下:

python-类属性和实例属性_第8张图片

你可能感兴趣的:(python)