Python类属性与实例属性用法分析

时间:2022-09-05 11:19:47

本文实例分析了Python类属性与实例属性用法。分享给大家供大家参考。具体如下:

类属性:类名.属性名 

实例属性:实例.属性名

?
1
2
3
4
5
6
7
8
9
10
11
12
>>> class test():
...  ver=1
...
>>> a=test()
>>> test.x=8
>>> a.__dict__
{}
>>> a.x
8
>>> a.x=9
>>> a.__dict__
{'x': 9}

1.类的属性如何模子一样,类属性一旦给出,所有的实例将都取这个值。
2.各个实例的这个属性的值可以变化。
3.某一实例的属性没有显示地给定,a.x可以显示这个属性的值,但是,它没有在名称空间里面。

为了把它加入名称空间,必须显式赋值。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Instant1(object):
 count=0
 def __init__(self):
  Instant1.count=Instant1.count+1
  print "created instant"
 def howmany(self):
  print Instant1.count
  print self.count
 
class Instant2(object):
 count=0
 def __init__(self):
  print self.count
  #print Instant2.count
  self.count=self.count+1
  #Instant2.count=Instant2.count+1
  print "created instant"
 def howmany(self):
  print self.count
  print Instant2.count

希望本文所述对大家的Python程序设计有所帮助。