Rumah >pembangunan bahagian belakang >Tutorial Python >Python面向对象之实例属性和类属性

Python面向对象之实例属性和类属性

不言
不言asal
2018-04-14 10:32:361286semak imbas

本篇文章给大家分享的内容是关于Python面向对象之实例属性和类属性 ,有着一定的参考价值,有需要的朋友可以参考一下

由于Python是动态语言,根据类创建实例可以任意绑定属性。

给实例绑定属性的方法是通过实例变量,或者通过self变量:

class Student(object):
    def __init__(self,name):
        self.name = name

s = Student('jeff')
print(s.name)
#jeff

当我们定义了一个类属性后,这个属性虽然归类所有,但类的所有实例

都可以访问到。来测试一下:

>>> class Student(object):
...     name = 'Student'
...
>>> s = Student()
>>> print(s.name)
Student
>>> print(Student.name)
Student
>>> s.name = 'jeff'
>>>
>>> print(s.name)
jeff
>>> print(Student.name)
Student
>>> del s.name
>>> print(s.name)
Student
>>> print(Student.name)
Student

从上面例子可以看出,在编写程序的时候,千万不要把实例属性和类属性使用相同的名字,因为相同名字的实例属性将屏蔽调类属性,但是当你删除实力属性后,再使用相同的名称,访问到的将是类属性

相关推荐:

Python面向对象之获取对象信息

Python面向对象之继承和多态

Atas ialah kandungan terperinci Python面向对象之实例属性和类属性 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn