类属性和实例属性
2018-06-14
大连
阴
/python/2018/06/14/ci.html
python
Python 是一门优雅而健壮的编程语言,它继承了传统编译语言的强大性和通用性,同时也借鉴了简单脚本和解释语言的易用性。
Python 编程简明教程 https://jsntn.com/python
Python 是一种动态语言1,根据类创建实例,所创建的实例可以任意绑定属性。
为实例绑定属性的方法是通过实例变量,或者通过 self
变量:
>>> class Band(object):
def __init__(self, name):
self.name = name
>>> bill = Band('Bill Brown')
>>> bill.name
'Bill Brown'
>>>
在上面的例子中我们创建了一个实例 bill,接续上面的代码,我们可以为 bill 实例绑定一个属性 age
:
>>> bill.age = 30
>>> bill.name
'Bill Brown'
>>> bill.age
30
>>>
同样我们也可以为 Band 类绑定属性。直接在 class 中定义属性,这种属性是类属性,归 Band 类所有:
>>> class Band(object):
age = 4
def __init__(self, name):
self.name = name
>>> Band.age
4
>>>
类的属性可以被所有的实例访问,例如我们新创建一个实例 louis:
>>> louis = Band('Louis K')
>>> louis.name
'Louis K'
>>> louis.age
4
>>>
在这里我们并没有为 louis 实例定义 age
实例属性,louis.age
有返回值是因为 louis 实例可以访问其类属性。
我们可以继续为 louis.age
实例属性赋值:
>>> louis.age = 15
>>> louis.age
15
>>>
紧接着,如果删除实例属性 louis.age
:
>>> del louis.age
再次查看 louis.age
的返回值:
>>> louis.age
4
>>>
由于实例的 age
属性没有找到,所以返回类的 age
属性值。
关于作者
最近更新: