发布时间:2019-08-24 09:33:48编辑:auto阅读(1722)
本python是python 3.5版本~!!!
class aa: w = 10 def __init__(self): self.x = 11 self.y = 12 def add(self): return self.x + self.y
a = aa() #将a投入aa这个类中,进行实例化#
print a.add() #这个结果显然易见#
#下边两条指令各起何作用?结果是输出两个 20 么?还是两个13?还是?
aa.w = 20
#注意!aa.w不是一个叫aa的实例里面的w属性,而是类aa,他里面的w属性,这句话其实等于
class aa:
w=20 #
a.w = 13 #正常情况下,a.w的应该是10,但是这里手工赋值为13#
print aa.w, a.w #所以这个答案也显而易见啦#
#程序继续增加如下,怎样理解这t和q呢?他们是___变量
a.t = 14 #实例a里面的属性t的值#
a.q = 15 #原理同上#
print a.t, a.q
#程序继续增加如下,怎样理解这m和n呢?他们是___变量
aa.m = 30 #同aa.w=20那句话一样,只不过用这种方式增加属性,而不用从头再把那个类写一遍,
这句话其实等于
class aa:
m=20 #
aa.n = 40
print aa.m, aa.n
#好了再来个提升吧
#程序继续增加,下列三个print语句都能正确执行么?为何?
b = aa() #b属于这个aa类#
print b.x,b.y #这个很直白#
print b.t,b.q
print b.m,b.n #m和n在上面的程序里已经被aa添加了,所以结果是什么应该显而易见了#
#要解决以上问题,首先得清晰何时类才有了类变量,实例有了实例变量?
#其次要深入理解类变量的作用,实例变量存在的范围和谁相关!
上一篇: python中子类调用父类的初始化方法
下一篇: python 对字符串的判断
48805
47851
38627
35805
30231
26977
26019
20847
20636
19011
426°
502°
532°
541°
524°
507°
576°
640°
757°
809°